<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MDF Lib: mdf Namespace Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="utillib.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">MDF Lib<span id="projectnumber">&#160;2.2</span>
   </div>
   <div id="projectbrief">Interface against MDF 3/4 files</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search',false);
  $(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

</div><!-- top -->
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#nested-classes">Classes</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">mdf Namespace Reference</div></div>
</div><!--header-->
<div class="contents">

<p>Main namespace for the MDF library.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemdf_1_1_ca_flag.html">CaFlag</a></td></tr>
<tr class="memdesc:namespacemdf_1_1_ca_flag"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel array (CA) block flags. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemdf_1_1_cc_flag.html">CcFlag</a></td></tr>
<tr class="memdesc:namespacemdf_1_1_cc_flag"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel conversion flags. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemdf_1_1_cg_flag.html">CgFlag</a></td></tr>
<tr class="memdesc:namespacemdf_1_1_cg_flag"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel group flags. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemdf_1_1_cn_flag.html">CnFlag</a></td></tr>
<tr class="memdesc:namespacemdf_1_1_cn_flag"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel flags. See also <a class="el" href="classmdf_1_1_i_channel.html#a62aae84ad11d364a7f6a513e46705551" title="Sets channel flags. Flags are defined in the CnFlag namespace">IChannel::Flags()</a>. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemdf_1_1_si_flag.html">SiFlag</a></td></tr>
<tr class="memdesc:namespacemdf_1_1_si_flag"><td class="mdescLeft">&#160;</td><td class="mdescRight">Source information flags. <br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_can_message.html">CanMessage</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class when logging CAN and CAN FD messages.  <a href="classmdf_1_1_can_message.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_ca_triple_reference.html">CaTripleReference</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure that defines the channel array (CA) blocks references.  <a href="structmdf_1_1_ca_triple_reference.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_element_link.html">ElementLink</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support structure that holds a DG/CG/CN relation.  <a href="structmdf_1_1_element_link.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_e_tag.html">ETag</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class for meta data items in an MDF file.  <a href="classmdf_1_1_e_tag.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_attachment.html">IAttachment</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface against an attached file.  <a href="classmdf_1_1_i_attachment.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_block.html">IBlock</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base class for all MDF blocks.  <a href="classmdf_1_1_i_block.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel.html">IChannel</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a MDF channel (CN) block.  <a href="classmdf_1_1_i_channel.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel_array.html">IChannelArray</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines an interface against an array (CA) block.  <a href="classmdf_1_1_i_channel_array.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel_conversion.html">IChannelConversion</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a channel conversion (CC) block.  <a href="classmdf_1_1_i_channel_conversion.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel_group.html">IChannelGroup</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface against a channel group (CG) block.  <a href="classmdf_1_1_i_channel_group.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel_hierarchy.html">IChannelHierarchy</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel hierarchy (CH) block.  <a href="classmdf_1_1_i_channel_hierarchy.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_channel_observer.html">IChannelObserver</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The channel observer object shall hold all samples for a channel.  <a href="classmdf_1_1_i_channel_observer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a data group (DG) block.  <a href="classmdf_1_1_i_data_group.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_event.html">IEvent</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface against an event block.  <a href="classmdf_1_1_i_event.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_file_history.html">IFileHistory</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface class against an MDF FH block.  <a href="classmdf_1_1_i_file_history.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_header.html">IHeader</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface class against an MDF HD block.  <a href="classmdf_1_1_i_header.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_mdf_timestamp.html">IMdfTimestamp</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for MDF timestamp handling.  <a href="classmdf_1_1_i_mdf_timestamp.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_meta_data.html">IMetaData</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface against an meta data block (MD) in a MDF4 file.  <a href="classmdf_1_1_i_meta_data.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_sample_observer.html">ISampleObserver</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a sample observer that handle incoming samples events.  <a href="classmdf_1_1_i_sample_observer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_sample_reduction.html">ISampleReduction</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines an interface to a sample reduction (SR) block.  <a href="classmdf_1_1_i_sample_reduction.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_source_information.html">ISourceInformation</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to a source information (SI) block.  <a href="classmdf_1_1_i_source_information.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_i_timestamp.html">ITimestamp</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for timestamp handling in MDF files.  <a href="classmdf_1_1_i_timestamp.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_local_timestamp.html">LocalTimestamp</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class representing a local timestamp, with timezone and DST offset.  <a href="classmdf_1_1_local_timestamp.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_factory.html">MdfFactory</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF factory class.  <a href="classmdf_1_1_mdf_factory.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_file.html">MdfFile</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements an user interface against a MDF file.  <a href="classmdf_1_1_mdf_file.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_helper.html">MdfHelper</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Support class for the MDF library.  <a href="classmdf_1_1_mdf_helper.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_log_stream.html">MdfLogStream</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF log stream interface.  <a href="classmdf_1_1_mdf_log_stream.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_reader.html">MdfReader</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reader interface to an MDF file.  <a href="classmdf_1_1_mdf_reader.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_mdf_writer.html">MdfWriter</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface against an MDF writer object.  <a href="classmdf_1_1_mdf_writer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_sample_record.html">SampleRecord</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple record buffer structure.  <a href="structmdf_1_1_sample_record.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_sr_value.html">SrValue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template class that is used to handle reduction sample.  <a href="structmdf_1_1_sr_value.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_text_conversion.html">TextConversion</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF 3 text conversion structure. Not used in MDF 4. Key to text conversion.  <a href="structmdf_1_1_text_conversion.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmdf_1_1_text_range_conversion.html">TextRangeConversion</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF 3 range conversion structure. Not used in MDF 4. Key min/max to text conversion.  <a href="structmdf_1_1_text_range_conversion.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_timezone_timestamp.html">TimezoneTimestamp</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class representing a timestamp with timezone information.  <a href="classmdf_1_1_timezone_timestamp.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmdf_1_1_utc_timestamp.html">UtcTimestamp</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class representing a UTC timestamp.  <a href="classmdf_1_1_utc_timestamp.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a3d35caffa4b62757fd0790a4abec8b42" id="r_a3d35caffa4b62757fd0790a4abec8b42"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3d35caffa4b62757fd0790a4abec8b42">MdfLogFunction2</a></td></tr>
<tr class="memdesc:a3d35caffa4b62757fd0790a4abec8b42"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF logging function definition.  <br /></td></tr>
<tr class="separator:a3d35caffa4b62757fd0790a4abec8b42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9eaaeb3f7059cb785bf9b282915279dc" id="r_a9eaaeb3f7059cb785bf9b282915279dc"><td class="memItemLeft" align="right" valign="top"><a id="a9eaaeb3f7059cb785bf9b282915279dc" name="a9eaaeb3f7059cb785bf9b282915279dc"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>AttachmentList</b> = std::vector&lt;const <a class="el" href="classmdf_1_1_i_attachment.html">IAttachment</a>*&gt;</td></tr>
<tr class="memdesc:a9eaaeb3f7059cb785bf9b282915279dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of pointers to attachments. <br /></td></tr>
<tr class="separator:a9eaaeb3f7059cb785bf9b282915279dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae94eaa66f7ae8757b1ec2f8ebd9b0e9b" id="r_ae94eaa66f7ae8757b1ec2f8ebd9b0e9b"><td class="memItemLeft" align="right" valign="top"><a id="ae94eaa66f7ae8757b1ec2f8ebd9b0e9b" name="ae94eaa66f7ae8757b1ec2f8ebd9b0e9b"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>DataGroupList</b> = std::vector&lt;<a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a>*&gt;</td></tr>
<tr class="memdesc:ae94eaa66f7ae8757b1ec2f8ebd9b0e9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of pointers to measurements (DG block). <br /></td></tr>
<tr class="separator:ae94eaa66f7ae8757b1ec2f8ebd9b0e9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8fe12a2dfbfeec087a35bbd0eb166d3" id="r_ac8fe12a2dfbfeec087a35bbd0eb166d3"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac8fe12a2dfbfeec087a35bbd0eb166d3">MdfLogFunction1</a></td></tr>
<tr class="memdesc:ac8fe12a2dfbfeec087a35bbd0eb166d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF log function definition.  <br /></td></tr>
<tr class="separator:ac8fe12a2dfbfeec087a35bbd0eb166d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5964a13a2ccb66953e040af87d62e2da" id="r_a5964a13a2ccb66953e040af87d62e2da"><td class="memItemLeft" align="right" valign="top"><a id="a5964a13a2ccb66953e040af87d62e2da" name="a5964a13a2ccb66953e040af87d62e2da"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>ChannelObserverPtr</b> = std::unique_ptr&lt;<a class="el" href="classmdf_1_1_i_channel_observer.html">IChannelObserver</a>&gt;</td></tr>
<tr class="memdesc:a5964a13a2ccb66953e040af87d62e2da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Smart pointer to an observer. <br /></td></tr>
<tr class="separator:a5964a13a2ccb66953e040af87d62e2da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a704962c842a2b4ae11010c7fcb26b0de" id="r_a704962c842a2b4ae11010c7fcb26b0de"><td class="memItemLeft" align="right" valign="top"><a id="a704962c842a2b4ae11010c7fcb26b0de" name="a704962c842a2b4ae11010c7fcb26b0de"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>ChannelObserverList</b> = std::vector&lt;<a class="el" href="#a5964a13a2ccb66953e040af87d62e2da">ChannelObserverPtr</a>&gt;</td></tr>
<tr class="memdesc:a704962c842a2b4ae11010c7fcb26b0de"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of observer. <br /></td></tr>
<tr class="separator:a704962c842a2b4ae11010c7fcb26b0de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b0b6ca099e0f57ab319de3223cc008c" id="r_a3b0b6ca099e0f57ab319de3223cc008c"><td class="memItemLeft" align="right" valign="top"><a id="a3b0b6ca099e0f57ab319de3223cc008c" name="a3b0b6ca099e0f57ab319de3223cc008c"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>ByteArray</b> = std::vector&lt;uint8_t&gt;</td></tr>
<tr class="memdesc:a3b0b6ca099e0f57ab319de3223cc008c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a dynamic byte array. <br /></td></tr>
<tr class="separator:a3b0b6ca099e0f57ab319de3223cc008c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a8d34dc5f782db723e4bbcecd657638b5" id="r_a8d34dc5f782db723e4bbcecd657638b5"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5">CanErrorType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5a9a10f345b0f755d461a8673a5e9ef6b4">UNKNOWN_ERROR</a> = 0
, <a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5aaf6fe271d46cd80c05b7459efb29359d">BIT_ERROR</a> = 1
, <a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5a3199db27c46bdb8ba94b9bd0559953f2">FORM_ERROR</a> = 2
, <a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5a080cd4a46ca45d9370343762d145dfb6">BIT_STUFFING_ERROR</a> = 3
, <br />
&#160;&#160;<a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5afde7dcbac92720d696e3ef02bf6435db">CRC_ERROR</a> = 4
, <a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5ae803ec28bf1df16755869f36ee1bf5af">ACK_ERROR</a> = 5
<br />
 }</td></tr>
<tr class="memdesc:a8d34dc5f782db723e4bbcecd657638b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerate yhat defines type of CAN bus error.  <a href="#a8d34dc5f782db723e4bbcecd657638b5">More...</a><br /></td></tr>
<tr class="separator:a8d34dc5f782db723e4bbcecd657638b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe80dc329a5936f1a7c9d3d7cddab9a7" id="r_afe80dc329a5936f1a7c9d3d7cddab9a7"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7">MessageType</a> : int { <a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7af47cd03808d8850ed87f40f5383a8c34">CAN_DataFrame</a>
, <a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7aa4c7201eeba912b9c3f741fae0a9fcd5">CAN_RemoteFrame</a>
, <a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7ae46bc6e78ee3011f649e4f9f30371af3">CAN_ErrorFrame</a>
, <a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7adc190c2a340675002fe8718f2a108e69">CAN_OverloadFrame</a>
 }</td></tr>
<tr class="memdesc:afe80dc329a5936f1a7c9d3d7cddab9a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerate that defines type of CAN messages.  <a href="#afe80dc329a5936f1a7c9d3d7cddab9a7">More...</a><br /></td></tr>
<tr class="separator:afe80dc329a5936f1a7c9d3d7cddab9a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4186b6847da714edb635652e9063081" id="r_aa4186b6847da714edb635652e9063081"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa4186b6847da714edb635652e9063081">ETagDataType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#aa4186b6847da714edb635652e9063081ab900a78030fdadc18121e26865e75791">StringType</a> = 0
, <a class="el" href="#aa4186b6847da714edb635652e9063081a2e5c11fd297ce18996a90478fb22c761">DecimalType</a> = 1
, <a class="el" href="#aa4186b6847da714edb635652e9063081a97a28f98bc67732c13cc3d7469f3f0df">IntegerType</a> = 2
, <a class="el" href="#aa4186b6847da714edb635652e9063081a909eb2f2282643673abdd584be0bff4d">FloatType</a> = 3
, <br />
&#160;&#160;<a class="el" href="#aa4186b6847da714edb635652e9063081a4855941474984709db3e0313253aa7d8">BooleanType</a> = 4
, <a class="el" href="#aa4186b6847da714edb635652e9063081a382a505dc62a5b8d56a8b6e04015154e">DateType</a> = 5
, <a class="el" href="#aa4186b6847da714edb635652e9063081a2505397568be968e5f1271c5fd619434">TimeType</a> = 6
, <a class="el" href="#aa4186b6847da714edb635652e9063081a7e33544c3dcc9880ed0a8146cfe1b7d0">DateTimeType</a> = 7
<br />
 }</td></tr>
<tr class="memdesc:aa4186b6847da714edb635652e9063081"><td class="mdescLeft">&#160;</td><td class="mdescRight">The e-tag may optional have a data type below. The value in the XML file is of course string but the data type may be used for interpretation of the value. Note that unit property can also be added.  <a href="#aa4186b6847da714edb635652e9063081">More...</a><br /></td></tr>
<tr class="separator:aa4186b6847da714edb635652e9063081"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aada23089f38b2f9a6a017ec2b1ec937d" id="r_aada23089f38b2f9a6a017ec2b1ec937d"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937d">ChannelType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937da4b1ddaa2b496677284d5262fc1ea3798">FixedLength</a> = 0
, <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937dacf5e4bc4a94b24088e16c9c3afd40a2a">VariableLength</a> = 1
, <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937daf03bde11d261f185cbacfa32c1c6538c">Master</a> = 2
, <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937da309ed161ec249f7ffdbac36b65e55b75">VirtualMaster</a> = 3
, <br />
&#160;&#160;<a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937dad8e87c0927539672f54462c837be0b7f">Sync</a> = 4
, <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937dab39e25cc980a4343b6d3c5dc3de432fa">MaxLength</a> = 5
, <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937dabec26578f09660b1b47ec535f0c47c75">VirtualData</a> = 6
<br />
 }</td></tr>
<tr class="memdesc:aada23089f38b2f9a6a017ec2b1ec937d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel functional type.  <a href="#aada23089f38b2f9a6a017ec2b1ec937d">More...</a><br /></td></tr>
<tr class="separator:aada23089f38b2f9a6a017ec2b1ec937d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97db9dc7397318bc42aa8ba07f1880df" id="r_a97db9dc7397318bc42aa8ba07f1880df"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a97db9dc7397318bc42aa8ba07f1880df">ChannelSyncType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a97db9dc7397318bc42aa8ba07f1880dfa6adf97f83acf6453d4a6a4b1070f3754">None</a> = 0
, <a class="el" href="#a97db9dc7397318bc42aa8ba07f1880dfaa76d4ef5f3f6a672bbfab2865563e530">Time</a> = 1
, <a class="el" href="#a97db9dc7397318bc42aa8ba07f1880dfa45f4ce6c3306644b1efe333f4f8d6929">Angle</a> = 2
, <a class="el" href="#a97db9dc7397318bc42aa8ba07f1880dfa0aa6f4210bf373c95eda00232e93cd98">Distance</a> = 3
, <br />
&#160;&#160;<a class="el" href="#a97db9dc7397318bc42aa8ba07f1880dfa88fa71f0a6e0dfedbb46d91cc0b37a50">Index</a> = 4
<br />
 }</td></tr>
<tr class="memdesc:a97db9dc7397318bc42aa8ba07f1880df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronization type.  <a href="#a97db9dc7397318bc42aa8ba07f1880df">More...</a><br /></td></tr>
<tr class="separator:a97db9dc7397318bc42aa8ba07f1880df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7ad63cc2b6ab8756d7149ae96453722" id="r_ae7ad63cc2b6ab8756d7149ae96453722"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722">ChannelDataType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a3d8c5b0c84d3c13c685749338d96e812">UnsignedIntegerLe</a> = 0
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722ae6543ba35c9cd740a7c91e07be9e231c">UnsignedIntegerBe</a> = 1
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722ab9f962c0e1fc6cd005dfa84b8b082758">SignedIntegerLe</a> = 2
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a38f0dc27477a45b9c3b92a8527ec627b">SignedIntegerBe</a> = 3
, <br />
&#160;&#160;<a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a6835157213e98f65d7b8b87388f17cba">FloatLe</a> = 4
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722aa5e26fec45b1179c4338c4db60c840b3">FloatBe</a> = 5
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722aa2f1cba0bbfc632c18c8600557e5ef82">StringAscii</a> = 6
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a270eae1795a15432ab07a1b2f9bf7bb5">StringUTF8</a> = 7
, <br />
&#160;&#160;<a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a21e5fa7038abacaa3a18253de43fe451">StringUTF16Le</a> = 8
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a668c2004661c1b7f1d6ecc1e4b4f105b">StringUTF16Be</a> = 9
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a29d83f0080e24c1f4b3975dc9ff9e868">ByteArray</a> = 10
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a70070b65143948de357e447c813e44ba">MimeSample</a> = 11
, <br />
&#160;&#160;<a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722af51576cc6cfc1e6abb5be79f24cf39a0">MimeStream</a> = 12
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a2f9b4e22520900077df8d4a52ff9a6d4">CanOpenDate</a> = 13
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722acbda3fa2f982691bd851286c23406378">CanOpenTime</a> = 14
, <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722ac6ca32aae0ba32d5029fdbef0885e88e">ComplexLe</a> = 15
, <br />
&#160;&#160;<a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722a3f32de61be852939714b416ba16438ca">ComplexBe</a> = 16
<br />
 }</td></tr>
<tr class="memdesc:ae7ad63cc2b6ab8756d7149ae96453722"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel data type.  <a href="#ae7ad63cc2b6ab8756d7149ae96453722">More...</a><br /></td></tr>
<tr class="separator:ae7ad63cc2b6ab8756d7149ae96453722"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dd611c31211248ea4ad0b7363590d14" id="r_a2dd611c31211248ea4ad0b7363590d14"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2dd611c31211248ea4ad0b7363590d14">ArrayType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a2dd611c31211248ea4ad0b7363590d14a4410ec34d9e6c1a68100ca0ce033fb17">Array</a> = 0
, <a class="el" href="#a2dd611c31211248ea4ad0b7363590d14aff2757aec416ec6497ab57ab4eac732f">ScalingAxis</a> = 1
, <a class="el" href="#a2dd611c31211248ea4ad0b7363590d14a5ca771078723e6444d6e62fee8d308e1">LookUp</a> = 2
, <a class="el" href="#a2dd611c31211248ea4ad0b7363590d14a4dbb422b3ca78f3b27b938271a38ef8f">IntervalAxis</a> = 3
, <br />
&#160;&#160;<a class="el" href="#a2dd611c31211248ea4ad0b7363590d14aef8645c3174195dd024c6b9be2891dec">ClassificationResult</a> = 4
<br />
 }</td></tr>
<tr class="memdesc:a2dd611c31211248ea4ad0b7363590d14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of array.  <a href="#a2dd611c31211248ea4ad0b7363590d14">More...</a><br /></td></tr>
<tr class="separator:a2dd611c31211248ea4ad0b7363590d14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87715c0617a1132b24b6f0cbed80cbcf" id="r_a87715c0617a1132b24b6f0cbed80cbcf"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a87715c0617a1132b24b6f0cbed80cbcf">ArrayStorage</a> : uint8_t { <a class="el" href="#a87715c0617a1132b24b6f0cbed80cbcfacf36be6e0b922b0439da0c777210fa27">CnTemplate</a> = 0
, <a class="el" href="#a87715c0617a1132b24b6f0cbed80cbcfafab4951b4277e5111830d5cfcf0a7927">CgTemplate</a> = 1
, <a class="el" href="#a87715c0617a1132b24b6f0cbed80cbcfa956064c9603b1c4d9deea2fa82f62571">DgTemplate</a> = 2
 }</td></tr>
<tr class="memdesc:a87715c0617a1132b24b6f0cbed80cbcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of storage.  <a href="#a87715c0617a1132b24b6f0cbed80cbcf">More...</a><br /></td></tr>
<tr class="separator:a87715c0617a1132b24b6f0cbed80cbcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa69a00bf9910fb428ebe4a3d63e6ed89" id="r_aa69a00bf9910fb428ebe4a3d63e6ed89"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89">ConversionType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a27a2f55c82cd42b2957dd162121d2bb1">NoConversion</a> = 0
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a32a843da6ea40ab3b17a3421ccdf671b">Linear</a> = 1
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a1987a88c6ff10363e43d25ead3066ad8">Rational</a> = 2
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89ab4777b408acf603e260974d5d8e9e930">Algebraic</a> = 3
, <br />
&#160;&#160;<a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a808b618e35ed2391cfab469e2d99d12a">ValueToValueInterpolation</a> = 4
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a20eef5d1dfda3b66f17b03b6d47e5d6e">ValueToValue</a> = 5
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89acfac125f526b65725b6ba6f353f2ffda">ValueRangeToValue</a> = 6
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a4fd994499bd4086f0b29736ea6f9d299">ValueToText</a> = 7
, <br />
&#160;&#160;<a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89acf735855d80633285b031fce93468a19">ValueRangeToText</a> = 8
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a7362803786d3f6ba47a00521a659fc54">TextToValue</a> = 9
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a00ec4ff42fccdad96dd42562cb295e69">TextToTranslation</a> = 10
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a0b4d1ba217fc0d9c855333cdb33f15df">BitfieldToText</a> = 11
, <br />
&#160;&#160;<a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a24ecfbe376a82f09ad48bffc6b8d6a87">Polynomial</a> = 30
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89ac1e19c09f700938f0ff7f1fd4722a3ac">Exponential</a> = 31
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a2f8e38ec1a5832670c5011a71603c929">Logarithmic</a> = 32
, <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89aa6cbaa53929e5a34410596639e1b1d85">DateConversion</a> = 33
, <br />
&#160;&#160;<a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89a9c1a47d870e059a176955f0b14b8b35e">TimeConversion</a> = 34
<br />
 }</td></tr>
<tr class="memdesc:aa69a00bf9910fb428ebe4a3d63e6ed89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of conversion formula.  <a href="#aa69a00bf9910fb428ebe4a3d63e6ed89">More...</a><br /></td></tr>
<tr class="separator:aa69a00bf9910fb428ebe4a3d63e6ed89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29bde85f03dffd25c09cd1003e2e0abc" id="r_a29bde85f03dffd25c09cd1003e2e0abc"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abc">ChType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca03937134cedab9078be39a77ee3a48a0">Group</a> = 0
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca86408593c34af77fdd90df932f8b5261">Function</a> = 1
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abcadc4c71563b9bc39a65be853457e6b7b6">Structure</a> = 2
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca47fc3b536a3a7ffdf790c01d5971b544">MapList</a> = 3
, <br />
&#160;&#160;<a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca66590126aec0b7ca1ed076a375c02cc3">InputVariable</a> = 4
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca6097df29d16f3db75614c71e4a6dd7a2">OutputVariable</a> = 5
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca89179ec269c2cab46e905f38ae8978cb">LocalVariable</a> = 6
, <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca8e10a1d5445b0a52de3ce4aff60a3354">CalibrationDefinition</a> = 7
, <br />
&#160;&#160;<a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abca856cd6ca556a97982cbca16a7f0d92f6">CalibrationObject</a> = 8
<br />
 }</td></tr>
<tr class="memdesc:a29bde85f03dffd25c09cd1003e2e0abc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Block type.  <a href="#a29bde85f03dffd25c09cd1003e2e0abc">More...</a><br /></td></tr>
<tr class="separator:a29bde85f03dffd25c09cd1003e2e0abc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adce2cd261c2306ee601dfaeb929b6fdb" id="r_adce2cd261c2306ee601dfaeb929b6fdb"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdb">EventType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdba79b26bb22dedc2a81b4211fc9b034231">RecordingPeriod</a> = 0
, <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdba89e4c1a99ca3a5472ff23d086fdf5766">RecordingInterrupt</a> = 1
, <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdbad13db63f51eb2f6c92fcee362a4e09cf">AcquisitionInterrupt</a> = 2
, <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdba1be0cafca6f3374b24cc833bac2c7380">StartRecording</a> = 3
, <br />
&#160;&#160;<a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdba0711c4b9ecefa0a637e6a7b6c3759859">StopRecording</a> = 4
, <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdbaf698f67f5666aff10729d8a1cb1c14d2">Trigger</a> = 5
, <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdba0235c996b43b3799573658df41ef82f2">Marker</a> = 6
<br />
 }</td></tr>
<tr class="memdesc:adce2cd261c2306ee601dfaeb929b6fdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of event.  <a href="#adce2cd261c2306ee601dfaeb929b6fdb">More...</a><br /></td></tr>
<tr class="separator:adce2cd261c2306ee601dfaeb929b6fdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c225042124d87094e5197dea6785cfb" id="r_a8c225042124d87094e5197dea6785cfb"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8c225042124d87094e5197dea6785cfb">SyncType</a> : uint8_t { <a class="el" href="#a8c225042124d87094e5197dea6785cfbad57e8c9127fbb81c871fb9982ee10e30">SyncTime</a> = 1
, <a class="el" href="#a8c225042124d87094e5197dea6785cfba95a9c6af6fbe441769aac87deda6d3e2">SyncAngle</a> = 2
, <a class="el" href="#a8c225042124d87094e5197dea6785cfba007baa5c9e60e388184764ffd93a8d36">SyncDistance</a> = 3
, <a class="el" href="#a8c225042124d87094e5197dea6785cfbac7ac042524327e55cf6a257206700d7b">SyncIndex</a> = 4
 }</td></tr>
<tr class="memdesc:a8c225042124d87094e5197dea6785cfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of synchronization value (default time)  <a href="#a8c225042124d87094e5197dea6785cfb">More...</a><br /></td></tr>
<tr class="separator:a8c225042124d87094e5197dea6785cfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46a3858892c319db499ddac17cd55712" id="r_a46a3858892c319db499ddac17cd55712"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46a3858892c319db499ddac17cd55712">RangeType</a> : uint8_t { <a class="el" href="#a46a3858892c319db499ddac17cd55712a5c1e4c3a5bd0d7b8cee4453b287e874a">RangePoint</a> = 0
, <a class="el" href="#a46a3858892c319db499ddac17cd55712a552f7f2caf56c895466db27d1a62514c">RangeStart</a> = 1
, <a class="el" href="#a46a3858892c319db499ddac17cd55712add46b2ccb813ff006f9b036525aca156">RangeEnd</a> = 2
 }</td></tr>
<tr class="memdesc:a46a3858892c319db499ddac17cd55712"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of range.  <a href="#a46a3858892c319db499ddac17cd55712">More...</a><br /></td></tr>
<tr class="separator:a46a3858892c319db499ddac17cd55712"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5d4d013ca4e4f7e6ba01731d6524ab9" id="r_ac5d4d013ca4e4f7e6ba01731d6524ab9"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9">EventCause</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9a32182932d203018f0beb616c7e7e2bb1">CauseOther</a> = 0
, <a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9af37ad211a6ac76fb8ba2a1b4656b025e">CauseError</a> = 1
, <a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9af49d093f6d65cdebc6cdc055f622cc79">CauseTool</a> = 2
, <a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9a8362e8ca4cedb30d584262c6e87871bf">CauseScript</a> = 3
, <br />
&#160;&#160;<a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9a28dac040376f590239dce3a352f5b6be">CauseUser</a> = 4
<br />
 }</td></tr>
<tr class="memdesc:ac5d4d013ca4e4f7e6ba01731d6524ab9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of cause.  <a href="#ac5d4d013ca4e4f7e6ba01731d6524ab9">More...</a><br /></td></tr>
<tr class="separator:ac5d4d013ca4e4f7e6ba01731d6524ab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec7305e223ebad2eeff01cf4f7f9baa5" id="r_aec7305e223ebad2eeff01cf4f7f9baa5"><td class="memItemLeft" align="right" valign="top"><a id="aec7305e223ebad2eeff01cf4f7f9baa5" name="aec7305e223ebad2eeff01cf4f7f9baa5"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aec7305e223ebad2eeff01cf4f7f9baa5">SrSyncType</a> : uint8_t { <br />
&#160;&#160;<b>Undefined</b> = 0
, <b>Time</b> = 1
, <b>Angle</b> = 2
, <b>Distance</b> = 3
, <br />
&#160;&#160;<b>Index</b> = 4
<br />
 }</td></tr>
<tr class="memdesc:aec7305e223ebad2eeff01cf4f7f9baa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of master for a sample reduction (SR) block. <br /></td></tr>
<tr class="separator:aec7305e223ebad2eeff01cf4f7f9baa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad08d2620932a9dc94fded9d0aad6a564" id="r_ad08d2620932a9dc94fded9d0aad6a564"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564">SourceType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564a6311ae17c1ee52b36e68aaf4ad066387">Other</a> = 0
, <a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564a9e792f9bfbd24c6951a6c3107ac1399a">Ecu</a> = 1
, <a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564a6e4b38bfd57741ac1597c440a1c98074">Bus</a> = 2
, <a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564ac830552ff7c9aa1a4ac83707820dfc5b">IoDevice</a> = 3
, <br />
&#160;&#160;<a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564ad421fd439cd14456726791338b3b397e">Tool</a> = 4
, <a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564a8f9bfe9d1345237cb3b2b205864da075">User</a> = 5
<br />
 }</td></tr>
<tr class="memdesc:ad08d2620932a9dc94fded9d0aad6a564"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of source information.  <a href="#ad08d2620932a9dc94fded9d0aad6a564">More...</a><br /></td></tr>
<tr class="separator:ad08d2620932a9dc94fded9d0aad6a564"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d8062669e05a387de168820f98d4ff6" id="r_a7d8062669e05a387de168820f98d4ff6"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7d8062669e05a387de168820f98d4ff6">BusType</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a7d8062669e05a387de168820f98d4ff6a6adf97f83acf6453d4a6a4b1070f3754">None</a> = 0
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6a6311ae17c1ee52b36e68aaf4ad066387">Other</a> = 1
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6ad677b410373bc790d9a8ec2e68090839">Can</a> = 2
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6ab3cd9344dad3ff77b4fd532b70660aa2">Lin</a> = 3
, <br />
&#160;&#160;<a class="el" href="#a7d8062669e05a387de168820f98d4ff6a08781b29d5ac13d64089d3da1902d0cd">Most</a> = 4
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6a01ae658e39b5a3a94590c6d88cffe050">FlexRay</a> = 5
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6aa5408da1399674db6c3d0aa36053013a">Kline</a> = 6
, <a class="el" href="#a7d8062669e05a387de168820f98d4ff6abe2ae05fb04ddcf6efa31e63e0f0e111">Ethernet</a> = 7
, <br />
&#160;&#160;<a class="el" href="#a7d8062669e05a387de168820f98d4ff6a87f81c22ba3bba54848756f0adfaa586">Usb</a> = 8
<br />
 }</td></tr>
<tr class="memdesc:a7d8062669e05a387de168820f98d4ff6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of bus.  <a href="#a7d8062669e05a387de168820f98d4ff6">More...</a><br /></td></tr>
<tr class="separator:a7d8062669e05a387de168820f98d4ff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89940085af9e56c3febb712def78559c" id="r_a89940085af9e56c3febb712def78559c"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a89940085af9e56c3febb712def78559c">MdfWriterType</a> : int { <a class="el" href="#a89940085af9e56c3febb712def78559caba6b2515a93ac8c9f492582657dca2c9">Mdf3Basic</a> = 0
, <a class="el" href="#a89940085af9e56c3febb712def78559cabb7cff22b37bf14e00f0d16eb318a0fc">Mdf4Basic</a> = 1
, <a class="el" href="#a89940085af9e56c3febb712def78559cad3c65eb846565484beced70ac23e8474">MdfBusLogger</a> = 2
, <a class="el" href="#a89940085af9e56c3febb712def78559ca5c67e44421e75be34c9fd5ae9ce8ff71">MdfConverter</a> = 3
 }</td></tr>
<tr class="memdesc:a89940085af9e56c3febb712def78559c"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF writer types.  <a href="#a89940085af9e56c3febb712def78559c">More...</a><br /></td></tr>
<tr class="separator:a89940085af9e56c3febb712def78559c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cc3fd35b9f0ae4aa7db3822aa9ae9ce" id="r_a2cc3fd35b9f0ae4aa7db3822aa9ae9ce"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9ce">MdfFileType</a> : int { <a class="el" href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9cea851edbf82c84897f70b8a3040c461b4d">Mdf3FileType</a> = 0
, <a class="el" href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9cea0b5948c0cce33817785c31133af337be">Mdf4FileType</a> = 1
 }</td></tr>
<tr class="memdesc:a2cc3fd35b9f0ae4aa7db3822aa9ae9ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">MDF file type.  <a href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9ce">More...</a><br /></td></tr>
<tr class="separator:a2cc3fd35b9f0ae4aa7db3822aa9ae9ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5025c3469ed574e224270c03c89b24ac" id="r_a5025c3469ed574e224270c03c89b24ac"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5025c3469ed574e224270c03c89b24ac">MdfLogSeverity</a> : uint8_t { <br />
&#160;&#160;<a class="el" href="#a5025c3469ed574e224270c03c89b24acafa21506cd249f400de4a974b5a0c8e0e">kTrace</a> = 0
, <a class="el" href="#a5025c3469ed574e224270c03c89b24acabb53ce21b7c0b7c8a8f7860a41901d29">kDebug</a>
, <a class="el" href="#a5025c3469ed574e224270c03c89b24aca176a473e63c17ccdac91640c67f149bf">kInfo</a>
, <a class="el" href="#a5025c3469ed574e224270c03c89b24aca69f03ebfd6cab4eaa75fc4182f0feca9">kNotice</a>
, <br />
&#160;&#160;<a class="el" href="#a5025c3469ed574e224270c03c89b24acaec0da41f4e48b52c362303eb27ed5dee">kWarning</a>
, <a class="el" href="#a5025c3469ed574e224270c03c89b24acae3587c730cc1aa530fa4ddc9c4204e97">kError</a>
, <a class="el" href="#a5025c3469ed574e224270c03c89b24aca5a20548c220f372fc701cae6de94040b">kCritical</a>
, <a class="el" href="#a5025c3469ed574e224270c03c89b24acac0d18299609bebcba35e0e9253cb41c4">kAlert</a>
, <br />
&#160;&#160;<a class="el" href="#a5025c3469ed574e224270c03c89b24aca1921cdd35fc6d7638aa9b2c7fc55cdef">kEmergency</a>
<br />
 }</td></tr>
<tr class="memdesc:a5025c3469ed574e224270c03c89b24ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the log severity level.  <a href="#a5025c3469ed574e224270c03c89b24ac">More...</a><br /></td></tr>
<tr class="separator:a5025c3469ed574e224270c03c89b24ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab408474aca4bb3e6fb04416ec3044d40" id="r_ab408474aca4bb3e6fb04416ec3044d40"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40">MdfBusType</a> : int { <br />
&#160;&#160;<a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40a6d5050f7a97e7e2e881a4e09dfbd6087">CAN</a>
, <a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40a90c3fd5ee0c6c471cac39b5f9a4ffae2">LIN</a>
, <a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40a01ae658e39b5a3a94590c6d88cffe050">FlexRay</a>
, <a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40a882dd232c0425bb9366544f84f0a7b6c">MOST</a>
, <br />
&#160;&#160;<a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40abe2ae05fb04ddcf6efa31e63e0f0e111">Ethernet</a>
, <a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40a696b031073e74bf2cb98e5ef201d4aa3">UNKNOWN</a>
<br />
 }</td></tr>
<tr class="memdesc:ab408474aca4bb3e6fb04416ec3044d40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerate that defines type of bus. Only relevant for bus logging.  <a href="#ab408474aca4bb3e6fb04416ec3044d40">More...</a><br /></td></tr>
<tr class="separator:ab408474aca4bb3e6fb04416ec3044d40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e87e4f5b259d4a96040c3729bc2d75c" id="r_a7e87e4f5b259d4a96040c3729bc2d75c"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e87e4f5b259d4a96040c3729bc2d75c">MdfStorageType</a> : int { <a class="el" href="#a7e87e4f5b259d4a96040c3729bc2d75ca3ddf6d91674409a2af938290dca6f94c">FixedLengthStorage</a>
, <a class="el" href="#a7e87e4f5b259d4a96040c3729bc2d75ca147ee54090dbf77df17c23f9202ad0c3">VlsdStorage</a>
, <a class="el" href="#a7e87e4f5b259d4a96040c3729bc2d75ca8492a9813f972dc0ac344d500f1268f5">MlsdStorage</a>
 }</td></tr>
<tr class="memdesc:a7e87e4f5b259d4a96040c3729bc2d75c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enumerate that defines how the raw data is stored. By default the fixed length record is stored. Only used when doing bus logging.  <a href="#a7e87e4f5b259d4a96040c3729bc2d75c">More...</a><br /></td></tr>
<tr class="separator:a7e87e4f5b259d4a96040c3729bc2d75c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1173d96d8ea953eb45c110ac550ce628" id="r_a1173d96d8ea953eb45c110ac550ce628"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1173d96d8ea953eb45c110ac550ce628">CreateMd5FileString</a> (const std::string &amp;file)</td></tr>
<tr class="memdesc:a1173d96d8ea953eb45c110ac550ce628"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generates an MD5 file checksum (32 character) string.  <br /></td></tr>
<tr class="separator:a1173d96d8ea953eb45c110ac550ce628"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb78ebb2c6a5a61f14d37a05b7afd20a" id="r_aeb78ebb2c6a5a61f14d37a05b7afd20a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aeb78ebb2c6a5a61f14d37a05b7afd20a">CreateMd5FileChecksum</a> (const std::string &amp;file, std::vector&lt; uint8_t &gt; &amp;md5)</td></tr>
<tr class="memdesc:aeb78ebb2c6a5a61f14d37a05b7afd20a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a file hash byte array according to MD5.  <br /></td></tr>
<tr class="separator:aeb78ebb2c6a5a61f14d37a05b7afd20a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36bdce80788796d1ee3482bfe48c3f96" id="r_a36bdce80788796d1ee3482bfe48c3f96"><td class="memItemLeft" align="right" valign="top"><a id="a36bdce80788796d1ee3482bfe48c3f96" name="a36bdce80788796d1ee3482bfe48c3f96"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IsMdfFile</b> (const std::string &amp;filename)</td></tr>
<tr class="memdesc:a36bdce80788796d1ee3482bfe48c3f96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the file is an MDF file. <br /></td></tr>
<tr class="separator:a36bdce80788796d1ee3482bfe48c3f96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16a866b3ee857add084d1d8e8b2e7aa3" id="r_a16a866b3ee857add084d1d8e8b2e7aa3"><td class="memItemLeft" align="right" valign="top"><a id="a16a866b3ee857add084d1d8e8b2e7aa3" name="a16a866b3ee857add084d1d8e8b2e7aa3"></a>
<a class="el" href="#a5964a13a2ccb66953e040af87d62e2da">ChannelObserverPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><b>CreateChannelObserver</b> (const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;data_group, const <a class="el" href="classmdf_1_1_i_channel_group.html">IChannelGroup</a> &amp;group, const <a class="el" href="classmdf_1_1_i_channel.html">IChannel</a> &amp;channel)</td></tr>
<tr class="memdesc:a16a866b3ee857add084d1d8e8b2e7aa3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates and attaches a channel sample observer. <br /></td></tr>
<tr class="separator:a16a866b3ee857add084d1d8e8b2e7aa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3db89e1164d41e240176bbf3681aeb3" id="r_aa3db89e1164d41e240176bbf3681aeb3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a5964a13a2ccb66953e040af87d62e2da">ChannelObserverPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa3db89e1164d41e240176bbf3681aeb3">CreateChannelObserver</a> (const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;dg_group, const std::string &amp;channel_name)</td></tr>
<tr class="separator:aa3db89e1164d41e240176bbf3681aeb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d36a3f5f140f8be0a7d4bebc9be7eeb" id="r_a7d36a3f5f140f8be0a7d4bebc9be7eeb"><td class="memItemLeft" align="right" valign="top"><a id="a7d36a3f5f140f8be0a7d4bebc9be7eeb" name="a7d36a3f5f140f8be0a7d4bebc9be7eeb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>CreateChannelObserverForChannelGroup</b> (const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;data_group, const <a class="el" href="classmdf_1_1_i_channel_group.html">IChannelGroup</a> &amp;group, <a class="el" href="#a704962c842a2b4ae11010c7fcb26b0de">ChannelObserverList</a> &amp;dest)</td></tr>
<tr class="memdesc:a7d36a3f5f140f8be0a7d4bebc9be7eeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a channel observer. <br /></td></tr>
<tr class="separator:a7d36a3f5f140f8be0a7d4bebc9be7eeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cfa60a833d0bbb41342775cda9c52c1" id="r_a9cfa60a833d0bbb41342775cda9c52c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9cfa60a833d0bbb41342775cda9c52c1">CreateChannelObserverForDataGroup</a> (const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;data_group, <a class="el" href="#a704962c842a2b4ae11010c7fcb26b0de">ChannelObserverList</a> &amp;dest_list)</td></tr>
<tr class="memdesc:a9cfa60a833d0bbb41342775cda9c52c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates channel observers for all channels within a data group.  <br /></td></tr>
<tr class="separator:a9cfa60a833d0bbb41342775cda9c52c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad071f40993f8c69d4faf24378fdc731" id="r_aad071f40993f8c69d4faf24378fdc731"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aad071f40993f8c69d4faf24378fdc731">Deflate</a> (std::FILE *in, std::FILE *out)</td></tr>
<tr class="memdesc:aad071f40993f8c69d4faf24378fdc731"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compress file to file.  <br /></td></tr>
<tr class="separator:aad071f40993f8c69d4faf24378fdc731"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadc429ba87b1a6757c12e4d8bf3c3583" id="r_aadc429ba87b1a6757c12e4d8bf3c3583"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aadc429ba87b1a6757c12e4d8bf3c3583">Deflate</a> (const <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;buf_in, <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;buf_out)</td></tr>
<tr class="memdesc:aadc429ba87b1a6757c12e4d8bf3c3583"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compress array to array.  <br /></td></tr>
<tr class="separator:aadc429ba87b1a6757c12e4d8bf3c3583"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2204306496d6be8d0755d78c6b2f3f8a" id="r_a2204306496d6be8d0755d78c6b2f3f8a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2204306496d6be8d0755d78c6b2f3f8a">Deflate</a> (const std::string &amp;filename, <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;buf_out)</td></tr>
<tr class="memdesc:a2204306496d6be8d0755d78c6b2f3f8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compress array to array.  <br /></td></tr>
<tr class="separator:a2204306496d6be8d0755d78c6b2f3f8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d68d0de49ecec2f114dbfa84445f0e0" id="r_a0d68d0de49ecec2f114dbfa84445f0e0"><td class="memItemLeft" align="right" valign="top"><a id="a0d68d0de49ecec2f114dbfa84445f0e0" name="a0d68d0de49ecec2f114dbfa84445f0e0"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>Inflate</b> (std::FILE *in, std::FILE *out)</td></tr>
<tr class="memdesc:a0d68d0de49ecec2f114dbfa84445f0e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decompress file to file. <br /></td></tr>
<tr class="separator:a0d68d0de49ecec2f114dbfa84445f0e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fb9cd270f5eb188adb9e3da05638f75" id="r_a5fb9cd270f5eb188adb9e3da05638f75"><td class="memItemLeft" align="right" valign="top"><a id="a5fb9cd270f5eb188adb9e3da05638f75" name="a5fb9cd270f5eb188adb9e3da05638f75"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>Inflate</b> (std::FILE *in, std::FILE *out, uint64_t nof_bytes)</td></tr>
<tr class="memdesc:a5fb9cd270f5eb188adb9e3da05638f75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decompress part of file to file. <br /></td></tr>
<tr class="separator:a5fb9cd270f5eb188adb9e3da05638f75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ac44ea44a6225ec667cf46eba2f8293" id="r_a8ac44ea44a6225ec667cf46eba2f8293"><td class="memItemLeft" align="right" valign="top"><a id="a8ac44ea44a6225ec667cf46eba2f8293" name="a8ac44ea44a6225ec667cf46eba2f8293"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>Inflate</b> (const <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;in, <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;out)</td></tr>
<tr class="memdesc:a8ac44ea44a6225ec667cf46eba2f8293"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decompress array to array. <br /></td></tr>
<tr class="separator:a8ac44ea44a6225ec667cf46eba2f8293"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca89e1bde497bbab2f230a4b58e5c857" id="r_aca89e1bde497bbab2f230a4b58e5c857"><td class="memItemLeft" align="right" valign="top"><a id="aca89e1bde497bbab2f230a4b58e5c857" name="aca89e1bde497bbab2f230a4b58e5c857"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>Inflate</b> (const <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;in, std::FILE *out)</td></tr>
<tr class="memdesc:aca89e1bde497bbab2f230a4b58e5c857"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decompress array to file. <br /></td></tr>
<tr class="separator:aca89e1bde497bbab2f230a4b58e5c857"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8888854dace05f8886586643a4e566cd" id="r_a8888854dace05f8886586643a4e566cd"><td class="memItemLeft" align="right" valign="top"><a id="a8888854dace05f8886586643a4e566cd" name="a8888854dace05f8886586643a4e566cd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Transpose</b> (<a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;data, size_t record_size)</td></tr>
<tr class="memdesc:a8888854dace05f8886586643a4e566cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transpose of an array. <br /></td></tr>
<tr class="separator:a8888854dace05f8886586643a4e566cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dcedb9a891a56428a5390e5cc4b5b57" id="r_a6dcedb9a891a56428a5390e5cc4b5b57"><td class="memItemLeft" align="right" valign="top"><a id="a6dcedb9a891a56428a5390e5cc4b5b57" name="a6dcedb9a891a56428a5390e5cc4b5b57"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>InvTranspose</b> (<a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;data, size_t record_size)</td></tr>
<tr class="memdesc:a6dcedb9a891a56428a5390e5cc4b5b57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invert transpose of an array. <br /></td></tr>
<tr class="separator:a6dcedb9a891a56428a5390e5cc4b5b57"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Main namespace for all MDF library classes and functions. </p>
</div><h2 class="groupheader">Typedef Documentation</h2>
<a id="ac8fe12a2dfbfeec087a35bbd0eb166d3" name="ac8fe12a2dfbfeec087a35bbd0eb166d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8fe12a2dfbfeec087a35bbd0eb166d3">&#9670;&#160;</a></span>MdfLogFunction1</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="#ac8fe12a2dfbfeec087a35bbd0eb166d3">mdf::MdfLogFunction1</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line"> std::function&lt;void(<span class="keyword">const</span> <a class="code hl_struct" href="struct_mdf_location.html">MdfLocation</a> &amp;location,</div>
<div class="line">  MdfLogSeverity severity, <span class="keyword">const</span> std::string &amp;text)&gt;</div>
<div class="ttc" id="astruct_mdf_location_html"><div class="ttname"><a href="struct_mdf_location.html">MdfLocation</a></div><div class="ttdoc">This is a replacement for the std::source_location library. The standard source_location library cann...</div><div class="ttdef"><b>Definition</b> mdflogstream.h:20</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a3d35caffa4b62757fd0790a4abec8b42" name="a3d35caffa4b62757fd0790a4abec8b42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d35caffa4b62757fd0790a4abec8b42">&#9670;&#160;</a></span>MdfLogFunction2</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="#a3d35caffa4b62757fd0790a4abec8b42">mdf::MdfLogFunction2</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line"> std::function&lt;void(MdfLogSeverity severity,</div>
<div class="line">  <span class="keyword">const</span> std::string&amp; function, <span class="keyword">const</span> std::string&amp; text)&gt;</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a87715c0617a1132b24b6f0cbed80cbcf" name="a87715c0617a1132b24b6f0cbed80cbcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87715c0617a1132b24b6f0cbed80cbcf">&#9670;&#160;</a></span>ArrayStorage</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a87715c0617a1132b24b6f0cbed80cbcf">mdf::ArrayStorage</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a87715c0617a1132b24b6f0cbed80cbcfacf36be6e0b922b0439da0c777210fa27" name="a87715c0617a1132b24b6f0cbed80cbcfacf36be6e0b922b0439da0c777210fa27"></a>CnTemplate&#160;</td><td class="fielddoc"><p>Channel template. </p>
</td></tr>
<tr><td class="fieldname"><a id="a87715c0617a1132b24b6f0cbed80cbcfafab4951b4277e5111830d5cfcf0a7927" name="a87715c0617a1132b24b6f0cbed80cbcfafab4951b4277e5111830d5cfcf0a7927"></a>CgTemplate&#160;</td><td class="fielddoc"><p>Channel group template. </p>
</td></tr>
<tr><td class="fieldname"><a id="a87715c0617a1132b24b6f0cbed80cbcfa956064c9603b1c4d9deea2fa82f62571" name="a87715c0617a1132b24b6f0cbed80cbcfa956064c9603b1c4d9deea2fa82f62571"></a>DgTemplate&#160;</td><td class="fielddoc"><p>Data group template. </p>
</td></tr>
</table>

</div>
</div>
<a id="a2dd611c31211248ea4ad0b7363590d14" name="a2dd611c31211248ea4ad0b7363590d14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2dd611c31211248ea4ad0b7363590d14">&#9670;&#160;</a></span>ArrayType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a2dd611c31211248ea4ad0b7363590d14">mdf::ArrayType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2dd611c31211248ea4ad0b7363590d14a4410ec34d9e6c1a68100ca0ce033fb17" name="a2dd611c31211248ea4ad0b7363590d14a4410ec34d9e6c1a68100ca0ce033fb17"></a>Array&#160;</td><td class="fielddoc"><p>Simple array without attributes. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2dd611c31211248ea4ad0b7363590d14aff2757aec416ec6497ab57ab4eac732f" name="a2dd611c31211248ea4ad0b7363590d14aff2757aec416ec6497ab57ab4eac732f"></a>ScalingAxis&#160;</td><td class="fielddoc"><p>Scaling axis. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2dd611c31211248ea4ad0b7363590d14a5ca771078723e6444d6e62fee8d308e1" name="a2dd611c31211248ea4ad0b7363590d14a5ca771078723e6444d6e62fee8d308e1"></a>LookUp&#160;</td><td class="fielddoc"><p>Lookup array. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2dd611c31211248ea4ad0b7363590d14a4dbb422b3ca78f3b27b938271a38ef8f" name="a2dd611c31211248ea4ad0b7363590d14a4dbb422b3ca78f3b27b938271a38ef8f"></a>IntervalAxis&#160;</td><td class="fielddoc"><p>Interval axis. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2dd611c31211248ea4ad0b7363590d14aef8645c3174195dd024c6b9be2891dec" name="a2dd611c31211248ea4ad0b7363590d14aef8645c3174195dd024c6b9be2891dec"></a>ClassificationResult&#160;</td><td class="fielddoc"><p>Classification result. </p>
</td></tr>
</table>

</div>
</div>
<a id="a7d8062669e05a387de168820f98d4ff6" name="a7d8062669e05a387de168820f98d4ff6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d8062669e05a387de168820f98d4ff6">&#9670;&#160;</a></span>BusType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a7d8062669e05a387de168820f98d4ff6">mdf::BusType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6a6adf97f83acf6453d4a6a4b1070f3754" name="a7d8062669e05a387de168820f98d4ff6a6adf97f83acf6453d4a6a4b1070f3754"></a>None&#160;</td><td class="fielddoc"><p>No bus (default). </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6a6311ae17c1ee52b36e68aaf4ad066387" name="a7d8062669e05a387de168820f98d4ff6a6311ae17c1ee52b36e68aaf4ad066387"></a>Other&#160;</td><td class="fielddoc"><p>Unknown bus type. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6ad677b410373bc790d9a8ec2e68090839" name="a7d8062669e05a387de168820f98d4ff6ad677b410373bc790d9a8ec2e68090839"></a>Can&#160;</td><td class="fielddoc"><p>CAN bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6ab3cd9344dad3ff77b4fd532b70660aa2" name="a7d8062669e05a387de168820f98d4ff6ab3cd9344dad3ff77b4fd532b70660aa2"></a>Lin&#160;</td><td class="fielddoc"><p>LIN bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6a08781b29d5ac13d64089d3da1902d0cd" name="a7d8062669e05a387de168820f98d4ff6a08781b29d5ac13d64089d3da1902d0cd"></a>Most&#160;</td><td class="fielddoc"><p>MOST bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6a01ae658e39b5a3a94590c6d88cffe050" name="a7d8062669e05a387de168820f98d4ff6a01ae658e39b5a3a94590c6d88cffe050"></a>FlexRay&#160;</td><td class="fielddoc"><p>FlexRay bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6aa5408da1399674db6c3d0aa36053013a" name="a7d8062669e05a387de168820f98d4ff6aa5408da1399674db6c3d0aa36053013a"></a>Kline&#160;</td><td class="fielddoc"><p>KLINE bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6abe2ae05fb04ddcf6efa31e63e0f0e111" name="a7d8062669e05a387de168820f98d4ff6abe2ae05fb04ddcf6efa31e63e0f0e111"></a>Ethernet&#160;</td><td class="fielddoc"><p>EtherNet bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7d8062669e05a387de168820f98d4ff6a87f81c22ba3bba54848756f0adfaa586" name="a7d8062669e05a387de168820f98d4ff6a87f81c22ba3bba54848756f0adfaa586"></a>Usb&#160;</td><td class="fielddoc"><p>USB bus. </p>
</td></tr>
</table>

</div>
</div>
<a id="a8d34dc5f782db723e4bbcecd657638b5" name="a8d34dc5f782db723e4bbcecd657638b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d34dc5f782db723e4bbcecd657638b5">&#9670;&#160;</a></span>CanErrorType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a8d34dc5f782db723e4bbcecd657638b5">mdf::CanErrorType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5a9a10f345b0f755d461a8673a5e9ef6b4" name="a8d34dc5f782db723e4bbcecd657638b5a9a10f345b0f755d461a8673a5e9ef6b4"></a>UNKNOWN_ERROR&#160;</td><td class="fielddoc"><p>Unspecified error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5aaf6fe271d46cd80c05b7459efb29359d" name="a8d34dc5f782db723e4bbcecd657638b5aaf6fe271d46cd80c05b7459efb29359d"></a>BIT_ERROR&#160;</td><td class="fielddoc"><p>CAN bit error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5a3199db27c46bdb8ba94b9bd0559953f2" name="a8d34dc5f782db723e4bbcecd657638b5a3199db27c46bdb8ba94b9bd0559953f2"></a>FORM_ERROR&#160;</td><td class="fielddoc"><p>CAN format error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5a080cd4a46ca45d9370343762d145dfb6" name="a8d34dc5f782db723e4bbcecd657638b5a080cd4a46ca45d9370343762d145dfb6"></a>BIT_STUFFING_ERROR&#160;</td><td class="fielddoc"><p>Bit stuffing error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5afde7dcbac92720d696e3ef02bf6435db" name="a8d34dc5f782db723e4bbcecd657638b5afde7dcbac92720d696e3ef02bf6435db"></a>CRC_ERROR&#160;</td><td class="fielddoc"><p>Checksum error. </p>
</td></tr>
<tr><td class="fieldname"><a id="a8d34dc5f782db723e4bbcecd657638b5ae803ec28bf1df16755869f36ee1bf5af" name="a8d34dc5f782db723e4bbcecd657638b5ae803ec28bf1df16755869f36ee1bf5af"></a>ACK_ERROR&#160;</td><td class="fielddoc"><p>Acknowledgement error. </p>
</td></tr>
</table>

</div>
</div>
<a id="ae7ad63cc2b6ab8756d7149ae96453722" name="ae7ad63cc2b6ab8756d7149ae96453722"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7ad63cc2b6ab8756d7149ae96453722">&#9670;&#160;</a></span>ChannelDataType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#ae7ad63cc2b6ab8756d7149ae96453722">mdf::ChannelDataType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Defines the channel data type. Avoid defining value sizes that doesn't align to a byte size.</p>
<p>The Le and Be extension is related to byte order. Little endian (Intel byte order) while big endian (Motorola byte order). </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a3d8c5b0c84d3c13c685749338d96e812" name="ae7ad63cc2b6ab8756d7149ae96453722a3d8c5b0c84d3c13c685749338d96e812"></a>UnsignedIntegerLe&#160;</td><td class="fielddoc"><p>Unsigned integer, little endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722ae6543ba35c9cd740a7c91e07be9e231c" name="ae7ad63cc2b6ab8756d7149ae96453722ae6543ba35c9cd740a7c91e07be9e231c"></a>UnsignedIntegerBe&#160;</td><td class="fielddoc"><p>Unsigned integer, big endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722ab9f962c0e1fc6cd005dfa84b8b082758" name="ae7ad63cc2b6ab8756d7149ae96453722ab9f962c0e1fc6cd005dfa84b8b082758"></a>SignedIntegerLe&#160;</td><td class="fielddoc"><p>Signed integer, little endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a38f0dc27477a45b9c3b92a8527ec627b" name="ae7ad63cc2b6ab8756d7149ae96453722a38f0dc27477a45b9c3b92a8527ec627b"></a>SignedIntegerBe&#160;</td><td class="fielddoc"><p>Signed integer, big endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a6835157213e98f65d7b8b87388f17cba" name="ae7ad63cc2b6ab8756d7149ae96453722a6835157213e98f65d7b8b87388f17cba"></a>FloatLe&#160;</td><td class="fielddoc"><p>Float, little endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722aa5e26fec45b1179c4338c4db60c840b3" name="ae7ad63cc2b6ab8756d7149ae96453722aa5e26fec45b1179c4338c4db60c840b3"></a>FloatBe&#160;</td><td class="fielddoc"><p>Float, big endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722aa2f1cba0bbfc632c18c8600557e5ef82" name="ae7ad63cc2b6ab8756d7149ae96453722aa2f1cba0bbfc632c18c8600557e5ef82"></a>StringAscii&#160;</td><td class="fielddoc"><p>Text, ISO-8859-1 coded. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a270eae1795a15432ab07a1b2f9bf7bb5" name="ae7ad63cc2b6ab8756d7149ae96453722a270eae1795a15432ab07a1b2f9bf7bb5"></a>StringUTF8&#160;</td><td class="fielddoc"><p>Text, UTF8 coded. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a21e5fa7038abacaa3a18253de43fe451" name="ae7ad63cc2b6ab8756d7149ae96453722a21e5fa7038abacaa3a18253de43fe451"></a>StringUTF16Le&#160;</td><td class="fielddoc"><p>Text, UTF16 coded little endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a668c2004661c1b7f1d6ecc1e4b4f105b" name="ae7ad63cc2b6ab8756d7149ae96453722a668c2004661c1b7f1d6ecc1e4b4f105b"></a>StringUTF16Be&#160;</td><td class="fielddoc"><p>Text, UTF16 coded big endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a29d83f0080e24c1f4b3975dc9ff9e868" name="ae7ad63cc2b6ab8756d7149ae96453722a29d83f0080e24c1f4b3975dc9ff9e868"></a>ByteArray&#160;</td><td class="fielddoc"><p>Byte array. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a70070b65143948de357e447c813e44ba" name="ae7ad63cc2b6ab8756d7149ae96453722a70070b65143948de357e447c813e44ba"></a>MimeSample&#160;</td><td class="fielddoc"><p>MIME sample byte array. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722af51576cc6cfc1e6abb5be79f24cf39a0" name="ae7ad63cc2b6ab8756d7149ae96453722af51576cc6cfc1e6abb5be79f24cf39a0"></a>MimeStream&#160;</td><td class="fielddoc"><p>MIME stream byte array. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a2f9b4e22520900077df8d4a52ff9a6d4" name="ae7ad63cc2b6ab8756d7149ae96453722a2f9b4e22520900077df8d4a52ff9a6d4"></a>CanOpenDate&#160;</td><td class="fielddoc"><p>7-byte CANOpen date. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722acbda3fa2f982691bd851286c23406378" name="ae7ad63cc2b6ab8756d7149ae96453722acbda3fa2f982691bd851286c23406378"></a>CanOpenTime&#160;</td><td class="fielddoc"><p>6-byte CANOpen time. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722ac6ca32aae0ba32d5029fdbef0885e88e" name="ae7ad63cc2b6ab8756d7149ae96453722ac6ca32aae0ba32d5029fdbef0885e88e"></a>ComplexLe&#160;</td><td class="fielddoc"><p>Complex value, little endian. </p>
</td></tr>
<tr><td class="fieldname"><a id="ae7ad63cc2b6ab8756d7149ae96453722a3f32de61be852939714b416ba16438ca" name="ae7ad63cc2b6ab8756d7149ae96453722a3f32de61be852939714b416ba16438ca"></a>ComplexBe&#160;</td><td class="fielddoc"><p>Complex value, big endian. </p>
</td></tr>
</table>

</div>
</div>
<a id="a97db9dc7397318bc42aa8ba07f1880df" name="a97db9dc7397318bc42aa8ba07f1880df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97db9dc7397318bc42aa8ba07f1880df">&#9670;&#160;</a></span>ChannelSyncType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a97db9dc7397318bc42aa8ba07f1880df">mdf::ChannelSyncType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Defines the synchronization type. The type is 'None' for fixed length channel but should be set for master and synchronization channels. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a97db9dc7397318bc42aa8ba07f1880dfa6adf97f83acf6453d4a6a4b1070f3754" name="a97db9dc7397318bc42aa8ba07f1880dfa6adf97f83acf6453d4a6a4b1070f3754"></a>None&#160;</td><td class="fielddoc"><p>No synchronization (default value) </p>
</td></tr>
<tr><td class="fieldname"><a id="a97db9dc7397318bc42aa8ba07f1880dfaa76d4ef5f3f6a672bbfab2865563e530" name="a97db9dc7397318bc42aa8ba07f1880dfaa76d4ef5f3f6a672bbfab2865563e530"></a>Time&#160;</td><td class="fielddoc"><p>Time type. </p>
</td></tr>
<tr><td class="fieldname"><a id="a97db9dc7397318bc42aa8ba07f1880dfa45f4ce6c3306644b1efe333f4f8d6929" name="a97db9dc7397318bc42aa8ba07f1880dfa45f4ce6c3306644b1efe333f4f8d6929"></a>Angle&#160;</td><td class="fielddoc"><p>Angle type. </p>
</td></tr>
<tr><td class="fieldname"><a id="a97db9dc7397318bc42aa8ba07f1880dfa0aa6f4210bf373c95eda00232e93cd98" name="a97db9dc7397318bc42aa8ba07f1880dfa0aa6f4210bf373c95eda00232e93cd98"></a>Distance&#160;</td><td class="fielddoc"><p>Distance type. </p>
</td></tr>
<tr><td class="fieldname"><a id="a97db9dc7397318bc42aa8ba07f1880dfa88fa71f0a6e0dfedbb46d91cc0b37a50" name="a97db9dc7397318bc42aa8ba07f1880dfa88fa71f0a6e0dfedbb46d91cc0b37a50"></a>Index&#160;</td><td class="fielddoc"><p>Sample number. </p>
</td></tr>
</table>

</div>
</div>
<a id="aada23089f38b2f9a6a017ec2b1ec937d" name="aada23089f38b2f9a6a017ec2b1ec937d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aada23089f38b2f9a6a017ec2b1ec937d">&#9670;&#160;</a></span>ChannelType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#aada23089f38b2f9a6a017ec2b1ec937d">mdf::ChannelType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Most channels are marked as 'FixedLength' which means that its size in a record is fixed. This works well with most data types but byte arrays and strings may change its size. Instead are these data types marked as 'Variable Length'. Avoid writing variable length data as it may allocate a lot of memory as it flush at the end of the measurement.</p>
<p>One channel in channel group (<a class="el" href="classmdf_1_1_i_channel_group.html" title="Interface against a channel group (CG) block.">IChannelGroup</a>), should be marked as a master channel. This channel is typical relative sample time with seconds as unit. The master channel is typical used on the X-axis when plotting data.</p>
<p>The 'VirtualMaster' channel can be used if the sample number is linear related to the sample time. The channel conversion (CC) block should define the sample number to time conversion.</p>
<p>The 'Sync' channel is used to synchronize an attachment block (file).</p>
<p>The 'MaxLength' type is typical used when storing CAN byte array where another channel stores actual bytes stored in a sample. For CAN the size in the max record size is 8 bytes.</p>
<p>The 'VirtualData' is similar to the 'VirtualMaster' channel but related to data. Good luck to find a use of this type. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937da4b1ddaa2b496677284d5262fc1ea3798" name="aada23089f38b2f9a6a017ec2b1ec937da4b1ddaa2b496677284d5262fc1ea3798"></a>FixedLength&#160;</td><td class="fielddoc"><p>Fixed length data (default type) </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937dacf5e4bc4a94b24088e16c9c3afd40a2a" name="aada23089f38b2f9a6a017ec2b1ec937dacf5e4bc4a94b24088e16c9c3afd40a2a"></a>VariableLength&#160;</td><td class="fielddoc"><p>Variable length data. </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937daf03bde11d261f185cbacfa32c1c6538c" name="aada23089f38b2f9a6a017ec2b1ec937daf03bde11d261f185cbacfa32c1c6538c"></a>Master&#160;</td><td class="fielddoc"><p>Master channel. </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937da309ed161ec249f7ffdbac36b65e55b75" name="aada23089f38b2f9a6a017ec2b1ec937da309ed161ec249f7ffdbac36b65e55b75"></a>VirtualMaster&#160;</td><td class="fielddoc"><p>Virtual master channel. </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937dad8e87c0927539672f54462c837be0b7f" name="aada23089f38b2f9a6a017ec2b1ec937dad8e87c0927539672f54462c837be0b7f"></a>Sync&#160;</td><td class="fielddoc"><p>Synchronize channel. </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937dab39e25cc980a4343b6d3c5dc3de432fa" name="aada23089f38b2f9a6a017ec2b1ec937dab39e25cc980a4343b6d3c5dc3de432fa"></a>MaxLength&#160;</td><td class="fielddoc"><p>Max length channel. </p>
</td></tr>
<tr><td class="fieldname"><a id="aada23089f38b2f9a6a017ec2b1ec937dabec26578f09660b1b47ec535f0c47c75" name="aada23089f38b2f9a6a017ec2b1ec937dabec26578f09660b1b47ec535f0c47c75"></a>VirtualData&#160;</td><td class="fielddoc"><p>Virtual data channel. </p>
</td></tr>
</table>

</div>
</div>
<a id="a29bde85f03dffd25c09cd1003e2e0abc" name="a29bde85f03dffd25c09cd1003e2e0abc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29bde85f03dffd25c09cd1003e2e0abc">&#9670;&#160;</a></span>ChType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a29bde85f03dffd25c09cd1003e2e0abc">mdf::ChType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca03937134cedab9078be39a77ee3a48a0" name="a29bde85f03dffd25c09cd1003e2e0abca03937134cedab9078be39a77ee3a48a0"></a>Group&#160;</td><td class="fielddoc"><p>Define a group. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca86408593c34af77fdd90df932f8b5261" name="a29bde85f03dffd25c09cd1003e2e0abca86408593c34af77fdd90df932f8b5261"></a>Function&#160;</td><td class="fielddoc"><p>Define a function. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abcadc4c71563b9bc39a65be853457e6b7b6" name="a29bde85f03dffd25c09cd1003e2e0abcadc4c71563b9bc39a65be853457e6b7b6"></a>Structure&#160;</td><td class="fielddoc"><p>Define a structure. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca47fc3b536a3a7ffdf790c01d5971b544" name="a29bde85f03dffd25c09cd1003e2e0abca47fc3b536a3a7ffdf790c01d5971b544"></a>MapList&#160;</td><td class="fielddoc"><p>Define a map list. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca66590126aec0b7ca1ed076a375c02cc3" name="a29bde85f03dffd25c09cd1003e2e0abca66590126aec0b7ca1ed076a375c02cc3"></a>InputVariable&#160;</td><td class="fielddoc"><p>Define input variables. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca6097df29d16f3db75614c71e4a6dd7a2" name="a29bde85f03dffd25c09cd1003e2e0abca6097df29d16f3db75614c71e4a6dd7a2"></a>OutputVariable&#160;</td><td class="fielddoc"><p>Define output variables. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca89179ec269c2cab46e905f38ae8978cb" name="a29bde85f03dffd25c09cd1003e2e0abca89179ec269c2cab46e905f38ae8978cb"></a>LocalVariable&#160;</td><td class="fielddoc"><p>Define local variables. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca8e10a1d5445b0a52de3ce4aff60a3354" name="a29bde85f03dffd25c09cd1003e2e0abca8e10a1d5445b0a52de3ce4aff60a3354"></a>CalibrationDefinition&#160;</td><td class="fielddoc"><p>Define calibration define objects. </p>
</td></tr>
<tr><td class="fieldname"><a id="a29bde85f03dffd25c09cd1003e2e0abca856cd6ca556a97982cbca16a7f0d92f6" name="a29bde85f03dffd25c09cd1003e2e0abca856cd6ca556a97982cbca16a7f0d92f6"></a>CalibrationObject&#160;</td><td class="fielddoc"><p>Define calibration reference objects. </p>
</td></tr>
</table>

</div>
</div>
<a id="aa69a00bf9910fb428ebe4a3d63e6ed89" name="aa69a00bf9910fb428ebe4a3d63e6ed89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa69a00bf9910fb428ebe4a3d63e6ed89">&#9670;&#160;</a></span>ConversionType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#aa69a00bf9910fb428ebe4a3d63e6ed89">mdf::ConversionType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The type together with the Parameter() function defines the conversion between channel and engineering value. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a27a2f55c82cd42b2957dd162121d2bb1" name="aa69a00bf9910fb428ebe4a3d63e6ed89a27a2f55c82cd42b2957dd162121d2bb1"></a>NoConversion&#160;</td><td class="fielddoc"><p>1:1 conversion. No parameters needed. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a32a843da6ea40ab3b17a3421ccdf671b" name="aa69a00bf9910fb428ebe4a3d63e6ed89a32a843da6ea40ab3b17a3421ccdf671b"></a>Linear&#160;</td><td class="fielddoc"><p>Linear conversion. 2 parameters. Eng = Ch * Par(1) + Par(0). </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a1987a88c6ff10363e43d25ead3066ad8" name="aa69a00bf9910fb428ebe4a3d63e6ed89a1987a88c6ff10363e43d25ead3066ad8"></a>Rational&#160;</td><td class="fielddoc"><p>Rational function conversion. 6 parameters. Eng = (Par(0)*Ch^2 + Par(1)*Ch + Par(2)) / (Par(3)*Ch^2 + Par(4)*Ch + Par(5)) </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89ab4777b408acf603e260974d5d8e9e930" name="aa69a00bf9910fb428ebe4a3d63e6ed89ab4777b408acf603e260974d5d8e9e930"></a>Algebraic&#160;</td><td class="fielddoc"><p>Text formula. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a808b618e35ed2391cfab469e2d99d12a" name="aa69a00bf9910fb428ebe4a3d63e6ed89a808b618e35ed2391cfab469e2d99d12a"></a>ValueToValueInterpolation&#160;</td><td class="fielddoc"><p>Value to value conversion with interpolation. Defined by a list of Key value pairs. Par(n) = key and Par(n+1) value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a20eef5d1dfda3b66f17b03b6d47e5d6e" name="aa69a00bf9910fb428ebe4a3d63e6ed89a20eef5d1dfda3b66f17b03b6d47e5d6e"></a>ValueToValue&#160;</td><td class="fielddoc"><p>Value to value conversion without interpolation. Defined by a list of Key value pairs. Par(n) = key and Par(n+1) value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89acfac125f526b65725b6ba6f353f2ffda" name="aa69a00bf9910fb428ebe4a3d63e6ed89acfac125f526b65725b6ba6f353f2ffda"></a>ValueRangeToValue&#160;</td><td class="fielddoc"><p>Value range to value conversion without interpolation. Defined by a list of Key min/max value triplets. Par(3*n) = key min, Par(3*(n+1)) = key max and Par(3*(n+2)) value. Add a default value last, after all the triplets. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a4fd994499bd4086f0b29736ea6f9d299" name="aa69a00bf9910fb428ebe4a3d63e6ed89a4fd994499bd4086f0b29736ea6f9d299"></a>ValueToText&#160;</td><td class="fielddoc"><p>Value to text conversion. Defined by a list of key values to text string conversions. This is normally used for enumerated channels. Par(n) value to Ref(n) text. Add a default referenced text last. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89acf735855d80633285b031fce93468a19" name="aa69a00bf9910fb428ebe4a3d63e6ed89acf735855d80633285b031fce93468a19"></a>ValueRangeToText&#160;</td><td class="fielddoc"><p>Value range to text conversion. Defined by a list of key min/max values to text string conversions. This is normally used for enumerated channels. Par(2*n) min key, Par(2(n+1)) max key to Ref(n) value. Add a default referenced text last. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a7362803786d3f6ba47a00521a659fc54" name="aa69a00bf9910fb428ebe4a3d63e6ed89a7362803786d3f6ba47a00521a659fc54"></a>TextToValue&#160;</td><td class="fielddoc"><p>Text to value conversion. Defines a list of text string to value conversion. Ref(n) key to Par(n) value. Add a default value last to the parameter list. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a00ec4ff42fccdad96dd42562cb295e69" name="aa69a00bf9910fb428ebe4a3d63e6ed89a00ec4ff42fccdad96dd42562cb295e69"></a>TextToTranslation&#160;</td><td class="fielddoc"><p>Text to text conversion. Defines a list of text string to text conversion. Ref(2*n) key to Ref(2*(n+1)) value. Add a text value last to the parameter list. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a0b4d1ba217fc0d9c855333cdb33f15df" name="aa69a00bf9910fb428ebe4a3d63e6ed89a0b4d1ba217fc0d9c855333cdb33f15df"></a>BitfieldToText&#160;</td><td class="fielddoc"><p>Bitfield to text conversion Currently unsupported conversion. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a24ecfbe376a82f09ad48bffc6b8d6a87" name="aa69a00bf9910fb428ebe4a3d63e6ed89a24ecfbe376a82f09ad48bffc6b8d6a87"></a>Polynomial&#160;</td><td class="fielddoc"><p>MDF 3 polynomial conversion. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89ac1e19c09f700938f0ff7f1fd4722a3ac" name="aa69a00bf9910fb428ebe4a3d63e6ed89ac1e19c09f700938f0ff7f1fd4722a3ac"></a>Exponential&#160;</td><td class="fielddoc"><p>MDF 3 exponential conversion. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a2f8e38ec1a5832670c5011a71603c929" name="aa69a00bf9910fb428ebe4a3d63e6ed89a2f8e38ec1a5832670c5011a71603c929"></a>Logarithmic&#160;</td><td class="fielddoc"><p>MDF 3 logarithmic conversion. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89aa6cbaa53929e5a34410596639e1b1d85" name="aa69a00bf9910fb428ebe4a3d63e6ed89aa6cbaa53929e5a34410596639e1b1d85"></a>DateConversion&#160;</td><td class="fielddoc"><p>MDF 3 Date conversion. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa69a00bf9910fb428ebe4a3d63e6ed89a9c1a47d870e059a176955f0b14b8b35e" name="aa69a00bf9910fb428ebe4a3d63e6ed89a9c1a47d870e059a176955f0b14b8b35e"></a>TimeConversion&#160;</td><td class="fielddoc"><p>MDF 3 Time conversion. </p>
</td></tr>
</table>

</div>
</div>
<a id="aa4186b6847da714edb635652e9063081" name="aa4186b6847da714edb635652e9063081"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4186b6847da714edb635652e9063081">&#9670;&#160;</a></span>ETagDataType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#aa4186b6847da714edb635652e9063081">mdf::ETagDataType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Use ISO UTC date and time formats or avoid these data types if possible as they just causing problem at presentation. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081ab900a78030fdadc18121e26865e75791" name="aa4186b6847da714edb635652e9063081ab900a78030fdadc18121e26865e75791"></a>StringType&#160;</td><td class="fielddoc"><p>Text value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a2e5c11fd297ce18996a90478fb22c761" name="aa4186b6847da714edb635652e9063081a2e5c11fd297ce18996a90478fb22c761"></a>DecimalType&#160;</td><td class="fielddoc"><p>Decimal value (use float instead) </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a97a28f98bc67732c13cc3d7469f3f0df" name="aa4186b6847da714edb635652e9063081a97a28f98bc67732c13cc3d7469f3f0df"></a>IntegerType&#160;</td><td class="fielddoc"><p>Integer value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a909eb2f2282643673abdd584be0bff4d" name="aa4186b6847da714edb635652e9063081a909eb2f2282643673abdd584be0bff4d"></a>FloatType&#160;</td><td class="fielddoc"><p>Floating point value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a4855941474984709db3e0313253aa7d8" name="aa4186b6847da714edb635652e9063081a4855941474984709db3e0313253aa7d8"></a>BooleanType&#160;</td><td class="fielddoc"><p>Boolean tru/false value. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a382a505dc62a5b8d56a8b6e04015154e" name="aa4186b6847da714edb635652e9063081a382a505dc62a5b8d56a8b6e04015154e"></a>DateType&#160;</td><td class="fielddoc"><p>Date value according to ISO (YYYY-MM-DD). </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a2505397568be968e5f1271c5fd619434" name="aa4186b6847da714edb635652e9063081a2505397568be968e5f1271c5fd619434"></a>TimeType&#160;</td><td class="fielddoc"><p>Time value ISO. </p>
</td></tr>
<tr><td class="fieldname"><a id="aa4186b6847da714edb635652e9063081a7e33544c3dcc9880ed0a8146cfe1b7d0" name="aa4186b6847da714edb635652e9063081a7e33544c3dcc9880ed0a8146cfe1b7d0"></a>DateTimeType&#160;</td><td class="fielddoc"><p>Date and Time ISO string (YYYY-MM-DD hh:mm:ss) </p>
</td></tr>
</table>

</div>
</div>
<a id="ac5d4d013ca4e4f7e6ba01731d6524ab9" name="ac5d4d013ca4e4f7e6ba01731d6524ab9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5d4d013ca4e4f7e6ba01731d6524ab9">&#9670;&#160;</a></span>EventCause</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#ac5d4d013ca4e4f7e6ba01731d6524ab9">mdf::EventCause</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ac5d4d013ca4e4f7e6ba01731d6524ab9a32182932d203018f0beb616c7e7e2bb1" name="ac5d4d013ca4e4f7e6ba01731d6524ab9a32182932d203018f0beb616c7e7e2bb1"></a>CauseOther&#160;</td><td class="fielddoc"><p>Unknown source. </p>
</td></tr>
<tr><td class="fieldname"><a id="ac5d4d013ca4e4f7e6ba01731d6524ab9af37ad211a6ac76fb8ba2a1b4656b025e" name="ac5d4d013ca4e4f7e6ba01731d6524ab9af37ad211a6ac76fb8ba2a1b4656b025e"></a>CauseError&#160;</td><td class="fielddoc"><p>An error generated this event. </p>
</td></tr>
<tr><td class="fieldname"><a id="ac5d4d013ca4e4f7e6ba01731d6524ab9af49d093f6d65cdebc6cdc055f622cc79" name="ac5d4d013ca4e4f7e6ba01731d6524ab9af49d093f6d65cdebc6cdc055f622cc79"></a>CauseTool&#160;</td><td class="fielddoc"><p>The tool generated this event. </p>
</td></tr>
<tr><td class="fieldname"><a id="ac5d4d013ca4e4f7e6ba01731d6524ab9a8362e8ca4cedb30d584262c6e87871bf" name="ac5d4d013ca4e4f7e6ba01731d6524ab9a8362e8ca4cedb30d584262c6e87871bf"></a>CauseScript&#160;</td><td class="fielddoc"><p>A script generated this event. </p>
</td></tr>
<tr><td class="fieldname"><a id="ac5d4d013ca4e4f7e6ba01731d6524ab9a28dac040376f590239dce3a352f5b6be" name="ac5d4d013ca4e4f7e6ba01731d6524ab9a28dac040376f590239dce3a352f5b6be"></a>CauseUser&#160;</td><td class="fielddoc"><p>A user generated this event. </p>
</td></tr>
</table>

</div>
</div>
<a id="adce2cd261c2306ee601dfaeb929b6fdb" name="adce2cd261c2306ee601dfaeb929b6fdb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adce2cd261c2306ee601dfaeb929b6fdb">&#9670;&#160;</a></span>EventType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#adce2cd261c2306ee601dfaeb929b6fdb">mdf::EventType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdba79b26bb22dedc2a81b4211fc9b034231" name="adce2cd261c2306ee601dfaeb929b6fdba79b26bb22dedc2a81b4211fc9b034231"></a>RecordingPeriod&#160;</td><td class="fielddoc"><p>Specifies a recording period (range). </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdba89e4c1a99ca3a5472ff23d086fdf5766" name="adce2cd261c2306ee601dfaeb929b6fdba89e4c1a99ca3a5472ff23d086fdf5766"></a>RecordingInterrupt&#160;</td><td class="fielddoc"><p>The recording was interrupted. </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdbad13db63f51eb2f6c92fcee362a4e09cf" name="adce2cd261c2306ee601dfaeb929b6fdbad13db63f51eb2f6c92fcee362a4e09cf"></a>AcquisitionInterrupt&#160;</td><td class="fielddoc"><p>The data acquisition was interrupted. </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdba1be0cafca6f3374b24cc833bac2c7380" name="adce2cd261c2306ee601dfaeb929b6fdba1be0cafca6f3374b24cc833bac2c7380"></a>StartRecording&#160;</td><td class="fielddoc"><p>Start recording event. </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdba0711c4b9ecefa0a637e6a7b6c3759859" name="adce2cd261c2306ee601dfaeb929b6fdba0711c4b9ecefa0a637e6a7b6c3759859"></a>StopRecording&#160;</td><td class="fielddoc"><p>Stop recording event. </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdbaf698f67f5666aff10729d8a1cb1c14d2" name="adce2cd261c2306ee601dfaeb929b6fdbaf698f67f5666aff10729d8a1cb1c14d2"></a>Trigger&#160;</td><td class="fielddoc"><p>Generic event (no range). </p>
</td></tr>
<tr><td class="fieldname"><a id="adce2cd261c2306ee601dfaeb929b6fdba0235c996b43b3799573658df41ef82f2" name="adce2cd261c2306ee601dfaeb929b6fdba0235c996b43b3799573658df41ef82f2"></a>Marker&#160;</td><td class="fielddoc"><p>Another generic event (maybe range). </p>
</td></tr>
</table>

</div>
</div>
<a id="ab408474aca4bb3e6fb04416ec3044d40" name="ab408474aca4bb3e6fb04416ec3044d40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab408474aca4bb3e6fb04416ec3044d40">&#9670;&#160;</a></span>MdfBusType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#ab408474aca4bb3e6fb04416ec3044d40">mdf::MdfBusType</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Enumerate that is used when doing bus logging. The enumerate is used when creating default channel and channel group names. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40a6d5050f7a97e7e2e881a4e09dfbd6087" name="ab408474aca4bb3e6fb04416ec3044d40a6d5050f7a97e7e2e881a4e09dfbd6087"></a>CAN&#160;</td><td class="fielddoc"><p>CAN or CAN-FD bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40a90c3fd5ee0c6c471cac39b5f9a4ffae2" name="ab408474aca4bb3e6fb04416ec3044d40a90c3fd5ee0c6c471cac39b5f9a4ffae2"></a>LIN&#160;</td><td class="fielddoc"><p>LIN bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40a01ae658e39b5a3a94590c6d88cffe050" name="ab408474aca4bb3e6fb04416ec3044d40a01ae658e39b5a3a94590c6d88cffe050"></a>FlexRay&#160;</td><td class="fielddoc"><p>FlexRay bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40a882dd232c0425bb9366544f84f0a7b6c" name="ab408474aca4bb3e6fb04416ec3044d40a882dd232c0425bb9366544f84f0a7b6c"></a>MOST&#160;</td><td class="fielddoc"><p>MOST bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40abe2ae05fb04ddcf6efa31e63e0f0e111" name="ab408474aca4bb3e6fb04416ec3044d40abe2ae05fb04ddcf6efa31e63e0f0e111"></a>Ethernet&#160;</td><td class="fielddoc"><p>Ethernet bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ab408474aca4bb3e6fb04416ec3044d40a696b031073e74bf2cb98e5ef201d4aa3" name="ab408474aca4bb3e6fb04416ec3044d40a696b031073e74bf2cb98e5ef201d4aa3"></a>UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown bus type (Default) </p>
</td></tr>
</table>

</div>
</div>
<a id="a2cc3fd35b9f0ae4aa7db3822aa9ae9ce" name="a2cc3fd35b9f0ae4aa7db3822aa9ae9ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9ce">&#9670;&#160;</a></span>MdfFileType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a2cc3fd35b9f0ae4aa7db3822aa9ae9ce">mdf::MdfFileType</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2cc3fd35b9f0ae4aa7db3822aa9ae9cea851edbf82c84897f70b8a3040c461b4d" name="a2cc3fd35b9f0ae4aa7db3822aa9ae9cea851edbf82c84897f70b8a3040c461b4d"></a>Mdf3FileType&#160;</td><td class="fielddoc"><p>MDF version 3 file. </p>
</td></tr>
<tr><td class="fieldname"><a id="a2cc3fd35b9f0ae4aa7db3822aa9ae9cea0b5948c0cce33817785c31133af337be" name="a2cc3fd35b9f0ae4aa7db3822aa9ae9cea0b5948c0cce33817785c31133af337be"></a>Mdf4FileType&#160;</td><td class="fielddoc"><p>MDF version 4 file. </p>
</td></tr>
</table>

</div>
</div>
<a id="a5025c3469ed574e224270c03c89b24ac" name="a5025c3469ed574e224270c03c89b24ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5025c3469ed574e224270c03c89b24ac">&#9670;&#160;</a></span>MdfLogSeverity</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a5025c3469ed574e224270c03c89b24ac">mdf::MdfLogSeverity</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24acafa21506cd249f400de4a974b5a0c8e0e" name="a5025c3469ed574e224270c03c89b24acafa21506cd249f400de4a974b5a0c8e0e"></a>kTrace&#160;</td><td class="fielddoc"><p>Trace or listen message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24acabb53ce21b7c0b7c8a8f7860a41901d29" name="a5025c3469ed574e224270c03c89b24acabb53ce21b7c0b7c8a8f7860a41901d29"></a>kDebug&#160;</td><td class="fielddoc"><p>Debug message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24aca176a473e63c17ccdac91640c67f149bf" name="a5025c3469ed574e224270c03c89b24aca176a473e63c17ccdac91640c67f149bf"></a>kInfo&#160;</td><td class="fielddoc"><p>Informational message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24aca69f03ebfd6cab4eaa75fc4182f0feca9" name="a5025c3469ed574e224270c03c89b24aca69f03ebfd6cab4eaa75fc4182f0feca9"></a>kNotice&#160;</td><td class="fielddoc"><p>Notice message. Notify the user. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24acaec0da41f4e48b52c362303eb27ed5dee" name="a5025c3469ed574e224270c03c89b24acaec0da41f4e48b52c362303eb27ed5dee"></a>kWarning&#160;</td><td class="fielddoc"><p>Warning message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24acae3587c730cc1aa530fa4ddc9c4204e97" name="a5025c3469ed574e224270c03c89b24acae3587c730cc1aa530fa4ddc9c4204e97"></a>kError&#160;</td><td class="fielddoc"><p>Error message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24aca5a20548c220f372fc701cae6de94040b" name="a5025c3469ed574e224270c03c89b24aca5a20548c220f372fc701cae6de94040b"></a>kCritical&#160;</td><td class="fielddoc"><p>Critical message (device error) </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24acac0d18299609bebcba35e0e9253cb41c4" name="a5025c3469ed574e224270c03c89b24acac0d18299609bebcba35e0e9253cb41c4"></a>kAlert&#160;</td><td class="fielddoc"><p>Alert or alarm message. </p>
</td></tr>
<tr><td class="fieldname"><a id="a5025c3469ed574e224270c03c89b24aca1921cdd35fc6d7638aa9b2c7fc55cdef" name="a5025c3469ed574e224270c03c89b24aca1921cdd35fc6d7638aa9b2c7fc55cdef"></a>kEmergency&#160;</td><td class="fielddoc"><p>Fatal error message. </p>
</td></tr>
</table>

</div>
</div>
<a id="a7e87e4f5b259d4a96040c3729bc2d75c" name="a7e87e4f5b259d4a96040c3729bc2d75c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e87e4f5b259d4a96040c3729bc2d75c">&#9670;&#160;</a></span>MdfStorageType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a7e87e4f5b259d4a96040c3729bc2d75c">mdf::MdfStorageType</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The fixed length storage is using one SD-block per byte array. The SD block is temporary stored in primary memory instead of store it on disc. This storage type is not recommended for bus logging.</p>
<p>The variable length storage uses an extra CG-record for byte array data. The storage type is used for bus logging where payload data is more than 8 byte.</p>
<p>The maximum length storage shall be used when payload data is 8 bytes or less. It is typically used when logging CAN messages which have 0-8 data payload. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7e87e4f5b259d4a96040c3729bc2d75ca3ddf6d91674409a2af938290dca6f94c" name="a7e87e4f5b259d4a96040c3729bc2d75ca3ddf6d91674409a2af938290dca6f94c"></a>FixedLengthStorage&#160;</td><td class="fielddoc"><p>The default is to use fixed length records. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7e87e4f5b259d4a96040c3729bc2d75ca147ee54090dbf77df17c23f9202ad0c3" name="a7e87e4f5b259d4a96040c3729bc2d75ca147ee54090dbf77df17c23f9202ad0c3"></a>VlsdStorage&#160;</td><td class="fielddoc"><p>Using variable length storage. </p>
</td></tr>
<tr><td class="fieldname"><a id="a7e87e4f5b259d4a96040c3729bc2d75ca8492a9813f972dc0ac344d500f1268f5" name="a7e87e4f5b259d4a96040c3729bc2d75ca8492a9813f972dc0ac344d500f1268f5"></a>MlsdStorage&#160;</td><td class="fielddoc"><p>Using maximum length storage. </p>
</td></tr>
</table>

</div>
</div>
<a id="a89940085af9e56c3febb712def78559c" name="a89940085af9e56c3febb712def78559c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89940085af9e56c3febb712def78559c">&#9670;&#160;</a></span>MdfWriterType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a89940085af9e56c3febb712def78559c">mdf::MdfWriterType</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a89940085af9e56c3febb712def78559caba6b2515a93ac8c9f492582657dca2c9" name="a89940085af9e56c3febb712def78559caba6b2515a93ac8c9f492582657dca2c9"></a>Mdf3Basic&#160;</td><td class="fielddoc"><p>Basic MDF version 3 writer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a89940085af9e56c3febb712def78559cabb7cff22b37bf14e00f0d16eb318a0fc" name="a89940085af9e56c3febb712def78559cabb7cff22b37bf14e00f0d16eb318a0fc"></a>Mdf4Basic&#160;</td><td class="fielddoc"><p>Basic MDF version 4 writer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a89940085af9e56c3febb712def78559cad3c65eb846565484beced70ac23e8474" name="a89940085af9e56c3febb712def78559cad3c65eb846565484beced70ac23e8474"></a>MdfBusLogger&#160;</td><td class="fielddoc"><p>Specialized bus logger writer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a89940085af9e56c3febb712def78559ca5c67e44421e75be34c9fd5ae9ce8ff71" name="a89940085af9e56c3febb712def78559ca5c67e44421e75be34c9fd5ae9ce8ff71"></a>MdfConverter&#160;</td><td class="fielddoc"><p>MDF writer for MDF 4 conversion applications. </p>
</td></tr>
</table>

</div>
</div>
<a id="afe80dc329a5936f1a7c9d3d7cddab9a7" name="afe80dc329a5936f1a7c9d3d7cddab9a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe80dc329a5936f1a7c9d3d7cddab9a7">&#9670;&#160;</a></span>MessageType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#afe80dc329a5936f1a7c9d3d7cddab9a7">mdf::MessageType</a> : int</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="afe80dc329a5936f1a7c9d3d7cddab9a7af47cd03808d8850ed87f40f5383a8c34" name="afe80dc329a5936f1a7c9d3d7cddab9a7af47cd03808d8850ed87f40f5383a8c34"></a>CAN_DataFrame&#160;</td><td class="fielddoc"><p>Normal CAN message. </p>
</td></tr>
<tr><td class="fieldname"><a id="afe80dc329a5936f1a7c9d3d7cddab9a7aa4c7201eeba912b9c3f741fae0a9fcd5" name="afe80dc329a5936f1a7c9d3d7cddab9a7aa4c7201eeba912b9c3f741fae0a9fcd5"></a>CAN_RemoteFrame&#160;</td><td class="fielddoc"><p>Remote frame message. </p>
</td></tr>
<tr><td class="fieldname"><a id="afe80dc329a5936f1a7c9d3d7cddab9a7ae46bc6e78ee3011f649e4f9f30371af3" name="afe80dc329a5936f1a7c9d3d7cddab9a7ae46bc6e78ee3011f649e4f9f30371af3"></a>CAN_ErrorFrame&#160;</td><td class="fielddoc"><p>Error message. </p>
</td></tr>
<tr><td class="fieldname"><a id="afe80dc329a5936f1a7c9d3d7cddab9a7adc190c2a340675002fe8718f2a108e69" name="afe80dc329a5936f1a7c9d3d7cddab9a7adc190c2a340675002fe8718f2a108e69"></a>CAN_OverloadFrame&#160;</td><td class="fielddoc"><p>Overload frame message. </p>
</td></tr>
</table>

</div>
</div>
<a id="a46a3858892c319db499ddac17cd55712" name="a46a3858892c319db499ddac17cd55712"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46a3858892c319db499ddac17cd55712">&#9670;&#160;</a></span>RangeType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a46a3858892c319db499ddac17cd55712">mdf::RangeType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a46a3858892c319db499ddac17cd55712a5c1e4c3a5bd0d7b8cee4453b287e874a" name="a46a3858892c319db499ddac17cd55712a5c1e4c3a5bd0d7b8cee4453b287e874a"></a>RangePoint&#160;</td><td class="fielddoc"><p>Defines a point. </p>
</td></tr>
<tr><td class="fieldname"><a id="a46a3858892c319db499ddac17cd55712a552f7f2caf56c895466db27d1a62514c" name="a46a3858892c319db499ddac17cd55712a552f7f2caf56c895466db27d1a62514c"></a>RangeStart&#160;</td><td class="fielddoc"><p>First in a range. </p>
</td></tr>
<tr><td class="fieldname"><a id="a46a3858892c319db499ddac17cd55712add46b2ccb813ff006f9b036525aca156" name="a46a3858892c319db499ddac17cd55712add46b2ccb813ff006f9b036525aca156"></a>RangeEnd&#160;</td><td class="fielddoc"><p>Last in a range. </p>
</td></tr>
</table>

</div>
</div>
<a id="ad08d2620932a9dc94fded9d0aad6a564" name="ad08d2620932a9dc94fded9d0aad6a564"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad08d2620932a9dc94fded9d0aad6a564">&#9670;&#160;</a></span>SourceType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#ad08d2620932a9dc94fded9d0aad6a564">mdf::SourceType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564a6311ae17c1ee52b36e68aaf4ad066387" name="ad08d2620932a9dc94fded9d0aad6a564a6311ae17c1ee52b36e68aaf4ad066387"></a>Other&#160;</td><td class="fielddoc"><p>Unknown source type. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564a9e792f9bfbd24c6951a6c3107ac1399a" name="ad08d2620932a9dc94fded9d0aad6a564a9e792f9bfbd24c6951a6c3107ac1399a"></a>Ecu&#160;</td><td class="fielddoc"><p>ECU. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564a6e4b38bfd57741ac1597c440a1c98074" name="ad08d2620932a9dc94fded9d0aad6a564a6e4b38bfd57741ac1597c440a1c98074"></a>Bus&#160;</td><td class="fielddoc"><p>Bus. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564ac830552ff7c9aa1a4ac83707820dfc5b" name="ad08d2620932a9dc94fded9d0aad6a564ac830552ff7c9aa1a4ac83707820dfc5b"></a>IoDevice&#160;</td><td class="fielddoc"><p>I/O device. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564ad421fd439cd14456726791338b3b397e" name="ad08d2620932a9dc94fded9d0aad6a564ad421fd439cd14456726791338b3b397e"></a>Tool&#160;</td><td class="fielddoc"><p>Tool. </p>
</td></tr>
<tr><td class="fieldname"><a id="ad08d2620932a9dc94fded9d0aad6a564a8f9bfe9d1345237cb3b2b205864da075" name="ad08d2620932a9dc94fded9d0aad6a564a8f9bfe9d1345237cb3b2b205864da075"></a>User&#160;</td><td class="fielddoc"><p>User. </p>
</td></tr>
</table>

</div>
</div>
<a id="a8c225042124d87094e5197dea6785cfb" name="a8c225042124d87094e5197dea6785cfb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c225042124d87094e5197dea6785cfb">&#9670;&#160;</a></span>SyncType</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">enum class <a class="el" href="#a8c225042124d87094e5197dea6785cfb">mdf::SyncType</a> : uint8_t</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8c225042124d87094e5197dea6785cfbad57e8c9127fbb81c871fb9982ee10e30" name="a8c225042124d87094e5197dea6785cfbad57e8c9127fbb81c871fb9982ee10e30"></a>SyncTime&#160;</td><td class="fielddoc"><p>Sync value represent time (s). </p>
</td></tr>
<tr><td class="fieldname"><a id="a8c225042124d87094e5197dea6785cfba95a9c6af6fbe441769aac87deda6d3e2" name="a8c225042124d87094e5197dea6785cfba95a9c6af6fbe441769aac87deda6d3e2"></a>SyncAngle&#160;</td><td class="fielddoc"><p>Sync value represent angle (rad). </p>
</td></tr>
<tr><td class="fieldname"><a id="a8c225042124d87094e5197dea6785cfba007baa5c9e60e388184764ffd93a8d36" name="a8c225042124d87094e5197dea6785cfba007baa5c9e60e388184764ffd93a8d36"></a>SyncDistance&#160;</td><td class="fielddoc"><p>Sync value represent distance (m). </p>
</td></tr>
<tr><td class="fieldname"><a id="a8c225042124d87094e5197dea6785cfbac7ac042524327e55cf6a257206700d7b" name="a8c225042124d87094e5197dea6785cfbac7ac042524327e55cf6a257206700d7b"></a>SyncIndex&#160;</td><td class="fielddoc"><p>Sync value represent sample index. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="aa3db89e1164d41e240176bbf3681aeb3" name="aa3db89e1164d41e240176bbf3681aeb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3db89e1164d41e240176bbf3681aeb3">&#9670;&#160;</a></span>CreateChannelObserver()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="#a5964a13a2ccb66953e040af87d62e2da">ChannelObserverPtr</a> mdf::CreateChannelObserver </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>dg_group</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>channel_name</em></span>&#160;)</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">nodiscard</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Function that creates a channel observer by searching the channel name. In case that the channel exist in many channel groups, it selects the group with the largest number of samples. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dg_group</td><td>The data group with the channel. </td></tr>
    <tr><td class="paramname">channel_name</td><td>The channel name </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A smart pointer to a channel observer. </dd></dl>

</div>
</div>
<a id="a9cfa60a833d0bbb41342775cda9c52c1" name="a9cfa60a833d0bbb41342775cda9c52c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9cfa60a833d0bbb41342775cda9c52c1">&#9670;&#160;</a></span>CreateChannelObserverForDataGroup()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void mdf::CreateChannelObserverForDataGroup </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmdf_1_1_i_data_group.html">IDataGroup</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>data_group</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="#a704962c842a2b4ae11010c7fcb26b0de">ChannelObserverList</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>dest_list</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>This function generates channel observers for all channels within the a data group. This function may a little but dangerous as it may allocate a lot of primary memory. An hint is to check how many bytes there are in the DG/DT blocks. If there is more than 1GByte, maybe you should do some partial read instead.</p>
<p>Note that channel groups without samples or data, are skipped. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">data_group</td><td>Reference to the data group. </td></tr>
    <tr><td class="paramname">dest_list</td><td>The subscriber list which is appended with channel observers. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aeb78ebb2c6a5a61f14d37a05b7afd20a" name="aeb78ebb2c6a5a61f14d37a05b7afd20a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb78ebb2c6a5a61f14d37a05b7afd20a">&#9670;&#160;</a></span>CreateMd5FileChecksum()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mdf::CreateMd5FileChecksum </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>file</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; uint8_t &gt; &amp;</td>          <td class="paramname"><span class="paramname"><em>md5</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Generates a file hash MD5 checksum. The output is a byte array. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Full path to the file name. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">md5</td><td>Returns a byte array. The vector size is set by the function. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True on success. </dd></dl>

</div>
</div>
<a id="a1173d96d8ea953eb45c110ac550ce628" name="a1173d96d8ea953eb45c110ac550ce628"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1173d96d8ea953eb45c110ac550ce628">&#9670;&#160;</a></span>CreateMd5FileString()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::string mdf::CreateMd5FileString </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>file</em></span></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates an MD5 file checksum. The output is a hexadecimal string. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">file</td><td>Full path to the file name. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A 32 (hex) character string on success else an empty string. </dd></dl>

</div>
</div>
<a id="aadc429ba87b1a6757c12e4d8bf3c3583" name="aadc429ba87b1a6757c12e4d8bf3c3583"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadc429ba87b1a6757c12e4d8bf3c3583">&#9670;&#160;</a></span>Deflate() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mdf::Deflate </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>buf_in</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>buf_out</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Compress a byte array directly to another array.</p>
<p>The input buffer data is compressed and sent to the output array. The output array needs be sized to a size so the compressed data fits. Normally it should be preset to the same size as the input. The output array is resized to the new compressed size.</p>
<p>The compress method is deflate according to ZLIB. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">buf_in</td><td>Input byte array with data. </td></tr>
    <tr><td class="paramname">buf_out</td><td>Output array. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True on success. </dd></dl>

</div>
</div>
<a id="a2204306496d6be8d0755d78c6b2f3f8a" name="a2204306496d6be8d0755d78c6b2f3f8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2204306496d6be8d0755d78c6b2f3f8a">&#9670;&#160;</a></span>Deflate() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mdf::Deflate </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;</td>          <td class="paramname"><span class="paramname"><em>filename</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="#a3b0b6ca099e0f57ab319de3223cc008c">ByteArray</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>buf_out</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Compress a file directly to an array.</p>
<p>The file data is compressed and sent to an output array. Unlike the other <a class="el" href="#aad071f40993f8c69d4faf24378fdc731" title="Compress file to file.">Deflate()</a> functions, the output buffer doesn't need to be sized before calling this function. The compress method is deflate according to ZLIB.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>Full name of the file to compress. </td></tr>
    <tr><td class="paramname">buf_out</td><td>Output byte array. The function resize the buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True on success. </dd></dl>

</div>
</div>
<a id="aad071f40993f8c69d4faf24378fdc731" name="aad071f40993f8c69d4faf24378fdc731"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad071f40993f8c69d4faf24378fdc731">&#9670;&#160;</a></span>Deflate() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool mdf::Deflate </td>
          <td>(</td>
          <td class="paramtype">std::FILE *</td>          <td class="paramname"><span class="paramname"><em>in</em></span>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::FILE *</td>          <td class="paramname"><span class="paramname"><em>out</em></span>&#160;)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Compress a file directly to another file. This is an efficient way of compressing a file. The compress method is deflate according to ZLIB. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">in</td><td>Pointer to the input file stream. </td></tr>
    <tr><td class="paramname">out</td><td>Pointer to the output file stream. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True on success. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0
</small></address>
</div><!-- doc-content -->
</body>
</html>
